Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: JuliaParallel/Dagger.jl
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v0.18.12
Choose a base ref
...
head repository: JuliaParallel/Dagger.jl
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: master
Choose a head ref

Commits on Jul 4, 2024

  1. Copy the full SHA
    88d723e View commit details

Commits on Jul 7, 2024

  1. Merge pull request #541 from m-fila/datateps_docs

    Include datadeps in API documentation
    jpsamaroo authored Jul 7, 2024
    Copy the full SHA
    8d59e9f View commit details

Commits on Jul 8, 2024

  1. Copy the full SHA
    464601d View commit details

Commits on Jul 9, 2024

  1. CompatHelper: add new compat entry for JSON3 in [weakdeps] at version…

    … 1, (keep existing compat)
    CompatHelper Julia committed Jul 9, 2024
    Copy the full SHA
    74c7497 View commit details
  2. Copy the full SHA
    9486871 View commit details
  3. Merge pull request #544 from JuliaParallel/jps/roadmap

    Add a Features/Roadmap document
    jpsamaroo authored Jul 9, 2024
    Copy the full SHA
    2c3fa3b View commit details

Commits on Jul 13, 2024

  1. Copy the full SHA
    b441cc7 View commit details
  2. Copy the full SHA
    7290aaf View commit details
  3. Copy the full SHA
    23d807b View commit details
  4. Copy the full SHA
    0e1120e View commit details
  5. Copy the full SHA
    0d1b2a2 View commit details

Commits on Jul 19, 2024

  1. Merge pull request #551 from wolthom/docs-icon

    docs: Create favicon and add it to the documentation
    jpsamaroo authored Jul 19, 2024
    Copy the full SHA
    e3af466 View commit details
  2. Update FEATURES_ROADMAP.md

    Add a few more entries around desired interfaces, and GPU-related things.
    jpsamaroo authored Jul 19, 2024
    Copy the full SHA
    7e2707b View commit details

Commits on Jul 22, 2024

  1. Copy the full SHA
    c69dfc2 View commit details
  2. parse: Support getproperty

    jpsamaroo committed Jul 22, 2024
    Copy the full SHA
    11b3f8e View commit details
  3. Copy the full SHA
    e383c39 View commit details
  4. Copy the full SHA
    42e2a32 View commit details
  5. Merge pull request #556 from JuliaParallel/jps/parser-extras

    `@spawn`: Support NamedTuple construction and access
    jpsamaroo authored Jul 22, 2024
    Copy the full SHA
    1f15a50 View commit details
  6. Warn in docs about sync on inner loops (#550)

    Co-authored-by: Wolf Thomsen <git@wolthom.com>
    Co-authored-by: Julian Samaroo <jpsamaroo@gmail.com>
    3 people authored Jul 22, 2024
    Copy the full SHA
    2764b76 View commit details
  7. Copy the full SHA
    bc042c9 View commit details
  8. Merge pull request #555 from JuliaParallel/jps/fetch-all

    Add fetch_all recursive helper
    jpsamaroo authored Jul 22, 2024
    Copy the full SHA
    52a97dd View commit details

Commits on Jul 24, 2024

  1. Copy the full SHA
    bb07e29 View commit details
  2. Export DTask

    jpsamaroo committed Jul 24, 2024
    Copy the full SHA
    57e2209 View commit details
  3. Merge pull request #554 from JuliaParallel/jps/dtaskfailedexception

    More `Thunk` to `DTask` renames
    jpsamaroo authored Jul 24, 2024
    Copy the full SHA
    5b5f816 View commit details

Commits on Jul 28, 2024

  1. Copy the full SHA
    8066064 View commit details
  2. Copy the full SHA
    aeb4b2d View commit details
  3. Copy the full SHA
    a9e21e0 View commit details

Commits on Jul 30, 2024

  1. Merge pull request #549 from wolthom/docs-occupancy

    add documentation for Task / Thread occupancy
    jpsamaroo authored Jul 30, 2024
    Copy the full SHA
    95febd2 View commit details

Commits on Aug 2, 2024

  1. Add rand! implementation

    pszufe authored and jpsamaroo committed Aug 2, 2024
    Copy the full SHA
    6176dc7 View commit details
  2. Copy the full SHA
    9d8a911 View commit details
  3. Copy the full SHA
    32136f6 View commit details
  4. Copy the full SHA
    0546789 View commit details
  5. datadeps: Add ainfo cache

    jpsamaroo committed Aug 2, 2024
    Copy the full SHA
    c65328a View commit details
  6. Merge pull request #546 from pszufe/psz/daggerrand

    Add rand! implementation
    jpsamaroo authored Aug 2, 2024
    Copy the full SHA
    67a7435 View commit details

Commits on Aug 8, 2024

  1. Copy the full SHA
    88bb1fe View commit details

Commits on Aug 9, 2024

  1. Merge pull request #559 from JuliaParallel/sch-errormonitor

    Replace all uses of @async with Threads.@Spawn
    jpsamaroo authored Aug 9, 2024
    Copy the full SHA
    368df2e View commit details
  2. Add references to README

    Rabab53 authored and jpsamaroo committed Aug 9, 2024
    Copy the full SHA
    c609f6b View commit details
  3. Add CITATION file

    jpsamaroo committed Aug 9, 2024
    Copy the full SHA
    b032326 View commit details
  4. Merge pull request #562 from Rabab53/patch-1

    Add references to README and add CITATION.cff
    jpsamaroo authored Aug 9, 2024
    Copy the full SHA
    1a792a4 View commit details
  5. Copy the full SHA
    e7eae88 View commit details

Commits on Aug 15, 2024

  1. DArray: Implement LU factorization

    Rabab53 authored and jpsamaroo committed Aug 15, 2024
    Copy the full SHA
    1816efd View commit details
  2. Copy the full SHA
    9749b63 View commit details
  3. Copy the full SHA
    2cfaf70 View commit details
  4. Drop Julia 1.8 support

    jpsamaroo committed Aug 15, 2024
    Copy the full SHA
    38c4a9b View commit details
  5. Merge pull request #565 from JuliaParallel/rabab/lu

    LU implementation for DArray
    jpsamaroo authored Aug 15, 2024
    Copy the full SHA
    6ec86a1 View commit details
  6. Copy the full SHA
    453797e View commit details
  7. Copy the full SHA
    6bf297c View commit details
  8. Copy the full SHA
    58ee866 View commit details
  9. Merge pull request #557 from JuliaParallel/jps/cancellation

    Add task/scheduler cancellation API
    jpsamaroo authored Aug 15, 2024
    Copy the full SHA
    557269d View commit details

Commits on Aug 16, 2024

  1. Copy the full SHA
    a4f6470 View commit details
Showing with 4,993 additions and 860 deletions.
  1. +23 −21 .buildkite/pipeline.yml
  2. +1 −1 .github/FUNDING.yml
  3. +2 −2 .github/workflows/Documentation.yml
  4. +19 −0 CITATION.cff
  5. +82 −0 FEATURES_ROADMAP.md
  6. +30 −21 Project.toml
  7. +30 −2 README.md
  8. +6 −0 docs/Project.toml
  9. +0 −266 docs/logo.svg
  10. +5 −1 docs/make.jl
  11. +9 −4 docs/src/api-dagger/functions.md
  12. +8 −0 docs/src/api-dagger/types.md
  13. BIN docs/src/assets/favicon.ico
  14. BIN docs/{logo.jpg → src/assets/logo-with-text.jpg}
  15. +480 −0 docs/src/assets/logo-with-text.svg
  16. +435 −0 docs/src/assets/logo.svg
  17. +6 −1 docs/src/darray.md
  18. +1 −1 docs/src/data-management.md
  19. +4 −2 docs/src/datadeps.md
  20. +49 −0 docs/src/external-languages/python.md
  21. +36 −1 docs/src/index.md
  22. +5 −0 docs/src/logging-visualization.md
  23. +4 −4 docs/src/scopes.md
  24. +105 −0 docs/src/streaming.md
  25. +104 −1 docs/src/task-spawning.md
  26. +8 −2 docs/src/use-cases/parallel-nested-loops.md
  27. +15 −0 ext/DistributionsExt.jl
  28. +15 −197 ext/GraphVizExt.jl
  29. +90 −0 ext/JSON3Ext.jl
  30. +151 −51 ext/PlotsExt.jl
  31. +46 −0 ext/PythonExt.jl
  32. +4 −0 lib/TimespanLogging/Project.toml
  33. +19 −1 lib/TimespanLogging/src/core.jl
  34. +62 −6 src/Dagger.jl
  35. +2 −2 src/array/alloc.jl
  36. +4 −4 src/array/cholesky.jl
  37. +10 −1 src/array/darray.jl
  38. +0 −2 src/array/indexing.jl
  39. +2 −2 src/array/linalg.jl
  40. +31 −0 src/array/lu.jl
  41. +28 −0 src/array/operators.jl
  42. +26 −0 src/array/random.jl
  43. +2 −2 src/array/sort.jl
  44. +182 −0 src/cancellation.jl
  45. +2 −0 src/chunks.jl
  46. +0 −6 src/compute.jl
  47. +93 −24 src/datadeps.jl
  48. +41 −1 src/dtask.jl
  49. +89 −1 src/memory-spaces.jl
  50. +6 −0 src/options.jl
  51. +2 −1 src/precompile.jl
  52. +124 −70 src/sch/Sch.jl
  53. +6 −6 src/sch/dynamic.jl
  54. +22 −4 src/sch/eager.jl
  55. +41 −8 src/sch/util.jl
  56. +64 −0 src/stream-buffers.jl
  57. +71 −0 src/stream-transfer.jl
  58. +707 −0 src/stream.jl
  59. +34 −5 src/submission.jl
  60. +63 −21 src/task-tls.jl
  61. +7 −0 src/threadproc.jl
  62. +83 −26 src/thunk.jl
  63. +6 −1 src/utils/dagdebug.jl
  64. +101 −24 src/utils/logging-events.jl
  65. +46 −11 src/utils/logging.jl
  66. +1 −1 src/utils/system_uuid.jl
  67. +112 −0 src/utils/tasks.jl
  68. +406 −0 src/utils/viz.jl
  69. +1 −1 src/visualization.jl
  70. +6 −1 test/Project.toml
  71. +10 −0 test/array/core.jl
  72. +3 −0 test/array/linalg/cholesky.jl
  73. +33 −0 test/array/linalg/lu.jl
  74. +30 −0 test/array/random.jl
  75. +19 −5 test/datadeps.jl
  76. +30 −0 test/extlang/python.jl
  77. +8 −3 test/logging.jl
  78. +1 −1 test/mutation.jl
  79. +21 −0 test/preferences.jl
  80. +3 −3 test/processors.jl
  81. +24 −2 test/runtests.jl
  82. +16 −5 test/scheduler.jl
  83. +7 −6 test/scopes.jl
  84. +415 −0 test/streaming.jl
  85. +88 −20 test/thunk.jl
  86. +10 −5 test/util.jl
44 changes: 23 additions & 21 deletions .buildkite/pipeline.yml
Original file line number Diff line number Diff line change
@@ -6,6 +6,7 @@
os: linux
arch: x86_64
command: "julia --project -e 'using Pkg; Pkg.develop(;path=\"lib/TimespanLogging\")'"

.bench: &bench
if: build.message =~ /\[run benchmarks\]/
agents:
@@ -14,17 +15,8 @@
os: linux
arch: x86_64
num_cpus: 16

steps:
- label: Julia 1.8
timeout_in_minutes: 90
<<: *test
plugins:
- JuliaCI/julia#v1:
version: "1.8"
- JuliaCI/julia-test#v1:
julia_args: "--threads=1"
- JuliaCI/julia-coverage#v1:
codecov: true
- label: Julia 1.9
timeout_in_minutes: 90
<<: *test
@@ -35,27 +27,30 @@ steps:
julia_args: "--threads=1"
- JuliaCI/julia-coverage#v1:
codecov: true
- label: Julia 1.10

- label: Julia 1
timeout_in_minutes: 90
<<: *test
plugins:
- JuliaCI/julia#v1:
version: "1.10"
version: "1"
- JuliaCI/julia-test#v1:
julia_args: "--threads=1"
- JuliaCI/julia-coverage#v1:
codecov: true

- label: Julia nightly
timeout_in_minutes: 90
<<: *test
plugins:
- JuliaCI/julia#v1:
version: "1.10-nightly"
version: "nightly"
- JuliaCI/julia-test#v1:
julia_args: "--threads=1"
- JuliaCI/julia-coverage#v1:
codecov: true
- label: Julia 1.8 (macOS)

- label: Julia 1 (macOS)
timeout_in_minutes: 90
<<: *test
agents:
@@ -64,35 +59,38 @@ steps:
arch: x86_64
plugins:
- JuliaCI/julia#v1:
version: "1.8"
version: "1"
- JuliaCI/julia-test#v1:
julia_args: "--threads=1"
- JuliaCI/julia-coverage#v1:
codecov: true
- label: Julia 1.8 - TimespanLogging

- label: Julia 1 - TimespanLogging
timeout_in_minutes: 20
<<: *test
plugins:
- JuliaCI/julia#v1:
version: "1.8"
version: "1"
- JuliaCI/julia-coverage#v1:
codecov: true
command: "julia --project -e 'using Pkg; Pkg.instantiate(); Pkg.develop(;path=\"lib/TimespanLogging\"); Pkg.test(\"TimespanLogging\")'"
- label: Julia 1.8 - DaggerWebDash

- label: Julia 1 - DaggerWebDash
timeout_in_minutes: 20
<<: *test
plugins:
- JuliaCI/julia#v1:
version: "1.8"
version: "1"
- JuliaCI/julia-coverage#v1:
codecov: true
command: "julia -e 'using Pkg; Pkg.develop(;path=pwd()); Pkg.develop(;path=\"lib/TimespanLogging\"); Pkg.develop(;path=\"lib/DaggerWebDash\"); include(\"lib/DaggerWebDash/test/runtests.jl\")'"

- label: Benchmarks
timeout_in_minutes: 120
<<: *bench
plugins:
- JuliaCI/julia#v1:
version: "1.8"
version: "1"
- JuliaCI/julia-test#v1:
run_tests: false
command: "julia -e 'using Pkg; Pkg.add(\"BenchmarkTools\"); Pkg.develop(;path=pwd())'; JULIA_PROJECT=\"$PWD\" julia --project benchmarks/benchmark.jl"
@@ -103,11 +101,12 @@ steps:
BENCHMARK_SCALE: "5:5:50"
artifacts:
- benchmarks/result*

- label: DTables.jl stability test
timeout_in_minutes: 20
plugins:
- JuliaCI/julia#v1:
version: "1.8"
version: "1"
env:
JULIA_NUM_THREADS: "4"
agents:
@@ -116,3 +115,6 @@ steps:
os: linux
arch: x86_64
command: "git clone https://github.com/JuliaParallel/DTables.jl.git ; julia -t4 -e 'using Pkg; Pkg.activate(\"DTables.jl\"); Pkg.develop(;path=\".\"); Pkg.instantiate(); Pkg.test()'"

# env:
# SECRET_CODECOV_TOKEN: ""
2 changes: 1 addition & 1 deletion .github/FUNDING.yml
Original file line number Diff line number Diff line change
@@ -1 +1 @@
custom: https://numfocus.salsalabs.org/donate-to-julia/index.html
custom: https://numfocus.org/donate
4 changes: 2 additions & 2 deletions .github/workflows/Documentation.yml
Original file line number Diff line number Diff line change
@@ -21,9 +21,9 @@ jobs:
version: '1'
- uses: julia-actions/cache@v2
- name: Install dependencies
run: julia --project=docs/ -e 'using Pkg; Pkg.develop([PackageSpec(path=pwd()), PackageSpec(path=pwd() * "/lib/TimespanLogging"), PackageSpec(path=pwd() * "/lib/DaggerWebDash")]); Pkg.instantiate()'
run: julia --project=docs/ -e 'using Pkg; Pkg.instantiate()'
- name: Build and deploy
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # For authentication with GitHub Actions token
DOCUMENTER_KEY: ${{ secrets.DOCUMENTER_KEY }} # For authentication with SSH deploy key
run: julia --project=docs/ docs/make.jl
run: julia --threads=auto --project=docs/ docs/make.jl
19 changes: 19 additions & 0 deletions CITATION.cff
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
cff-version: 1.2.0
message: "If you use this software, please cite it as below."
authors:
- family-names: "Samaroo"
given-names: "Julian"
orcid: "https://orcid.org/0009-0003-9623-0512"
- family-names: "Alomairy"
given-names: "Rabab"
orcid: "https://orcid.org/0000-0001-9911-6094"
- family-names: "de Alcântara Tomé"
given-names: "Felipe"
orcid: "https://orcid.org/0000-0002-1448-9340"
- family-names: "Wrigley"
given-names: "James"
orcid: "https://orcid.org/0009-0003-6525-7413"
title: "Dagger.jl"
version: 0.18.12
date-released: 2024-06-25
url: "https://github.com/JuliaParallel/Dagger.jl"
82 changes: 82 additions & 0 deletions FEATURES_ROADMAP.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,82 @@
# Dagger's Supported Features

This is the list of features that Dagger currently supports, as well as their
status. If you find a bug in any of the "Great Support" features, please open
an issue - for "Moderate Support" or "Poor Support", pull requests are always
welcome!

## Core

| Feature | Status | Notes | Contact (JuliaLang Slack) |
| ------------- | ------------- | ----- | ------- |
| Multithreading | :heavy_check_mark: Great Support | | @jpsamaroo |
| Distributed | :warning: Moderate Support | Thread-safety issues [#101](https://github.com/JuliaLang/Distributed.jl/pull/101) | @jpsamaroo |
| Fault Tolerance | :x: Poor Support | Sometimes unreliable, may fail to recover in trivial cases | @jpsamaroo |
| Checkpointing | :warning: Moderate Support | Inconvenient API | @jpsamaroo |

## DArrays

| Feature | Status | Notes | Contact (JuliaLang Slack) |
| ------------- | ------------- | ----- | ------- |
| Broadcast | :heavy_check_mark: Great Support | | @jpsamaroo |
| Map/Reduce | :heavy_check_mark: Great Support | | @jpsamaroo |
| Indexing/Slicing | :x: Poor Support | Incorrect/broken slicing, poor performance | @jpsamaroo |
| Matmul | :warning: Moderate Support | Some incorrect boundschecks (for `syrk`) | @Rabab53 |
| Cholesky | :warning: Moderate Support | Missing repartitioning support | @Rabab53 |
| Sparse Arrays | :x: Poor Support | Needs more supported operations and tests | @jpsamaroo |

## GPUs

| Feature | Status | Notes | Contact (JuliaLang Slack) |
| ------------- | ------------- | ----- | ------- |
| NVIDIA GPUs | :heavy_check_mark: Great Support | | @jpsamaroo |
| AMD GPUs | :heavy_check_mark: Great Support | | @jpsamaroo |
| Apple GPUs | :warning: Moderate Support | Missing linalg operations | @jpsamaroo or @Rabab53 |
| Intel GPUs | :warning: Moderate Support | Missing linalg operations | @jpsamaroo or @Rabab53 |
| KernelAbstractions Integration | :warning: Moderate Support | Missing synchronization optimizations | @jpsamaroo |


# Dagger's Roadmap and Todo List

This is the list of features and improvements that are planned for Dagger.
Please consider contributing an improvement if you feel able to do so!

## Interfaces

| Feature | Issue/PR # | Help Wanted | Testers Wanted | Details | Contact (JuliaLang Slack) |
| ------------- | ------------- | ------------- | ------------- | ------------- | ------------- |
| DGraphs | https://github.com/JuliaParallel/Dagger.jl/pull/448 | :heavy_check_mark: | :heavy_check_mark: | Graphs.jl interface for Dagger-distributed graphs | @jpsamaroo or @pszufe |
| Streaming Tasks | https://github.com/JuliaParallel/Dagger.jl/pull/463 | :heavy_check_mark: | :heavy_check_mark: | Streaming task interface for Dagger | @jpsamaroo, @JamesWrigley, or `@Davide Ferretti` |
| SPMD | None | :heavy_check_mark: | :heavy_check_mark: | SPMD interface (like MPI) | @jpsamaroo |
| KernelAbstractions Backend | None | :heavy_check_mark: | N/A | KA `DaggerBackend` for SPMD programming | @jpsamaroo |
| Einsum | None | :heavy_check_mark: | N/A | Einsum-notation operator for DArray | @jpsamaroo |

## DArrays

| Feature | Issue/PR # | Help Wanted | Testers Wanted | Details | Contact (JuliaLang Slack) |
| ------------- | ------------- | ------------- | ------------- | ------------- | ------------- |
| Matmul (Sparse) | https://github.com/JuliaParallel/Dagger.jl/pull/507 (`jps/matmul-gpu-fixes`) | :heavy_check_mark: | :heavy_check_mark: | Switch from raw BLAS calls to `generic_matmatmul!` | @jpsamaroo or @Rabab53 |
| Matmul (GPU) | https://github.com/JuliaParallel/Dagger.jl/pull/543 (`jps/matmul-gpu-fixes`) | :heavy_check_mark: | :heavy_check_mark: | Implement GPU CI for matmul, fix any broken implementation details | @jpsamaroo or @Rabab53 |
| LU Factorization | `rabab/lu` | :heavy_check_mark: Need pivoting impl. | N/A | LU factorization for DArray | @Rabab53 |
| QR Factorization | https://github.com/JuliaParallel/Dagger.jl/pull/529 | :warning: WIP | N/A | QR factorization for DArray | @fda-tome |
| Triangular Solve | `triangularsolve` | :heavy_check_mark: Need wire-up of LinearAlgebra API | N/A | Triangular solve (`A \ B`) and `ldiv` for DArray | @Rabab53 |
| SVD | None | :heavy_check_mark: | N/A | SVD for DArray | @fda-tome or @Rabab53 |

## Datadeps

| Feature | Issue/PR # | Help Wanted | Testers Wanted | Details | Contact (JuliaLang Slack) |
| ------------- | ------------- | ------------- | ------------- | ------------- | ------------- |
| Stencil Helper | None | :heavy_check_mark: | N/A | Helper for stencil computations which lowers to Datadeps | @jpsamaroo |
| MPI Support | None | :warning: WIP | :heavy_check_mark: | Datadeps support for automatic MPI usage | @fda-tome or @jpsamaroo |
| Memory Awareness | None | :heavy_check_mark: | N/A | Datadeps support for memory awareness and OOM avoidance | @fda-tome or @jpsamaroo |
| Mixed-Precision Support | None | :heavy_check_mark: | N/A | Datadeps support for automatic precision modification | @Rabab53 or @jpsamaroo |

## GPUs

| Feature | Issue/PR # | Help Wanted | Testers Wanted | Details | Contact (JuliaLang Slack) |
| ------------- | ------------- | ------------- | ------------- | ------------- | ------------- |
| Extensive GPU CI | None | :heavy_check_mark: | N/A | More extensive CI for GPU integrations | @jpsamaroo |
| GPU Stream Scheduler | None | :heavy_check_mark: | N/A | Scheduler for assigning tasks to different streams on the same GPU device | @jpsamaroo |
| KA Single-CPU Backend | None | :heavy_check_mark: | N/A | New KernelAbstractions backend for single-threaded CPU execution (helpful for performance of KA kernels in Dagger tasks | @jpsamaroo |
| GraphCore IPU Support | None | :heavy_check_mark: | N/A | IPUToolkit support in Dagger | @jpsamaroo or @giordano |
| Consuming DaggerGPU | None | :heavy_check_mark: | N/A | Move DaggerGPU code and extensions into Dagger | @jpsamaroo |
51 changes: 30 additions & 21 deletions Project.toml
Original file line number Diff line number Diff line change
@@ -1,16 +1,19 @@
name = "Dagger"
uuid = "d58978e5-989f-55fb-8d15-ea34adc7bf54"
version = "0.18.12"
version = "0.18.14"

[deps]
Adapt = "79e6a3ab-5dfb-504d-930d-738a2a938a0e"
DataStructures = "864edb3b-99cc-5e75-8d2d-829cb0a9cfe8"
Distributed = "8ba89e20-285c-5b6f-9357-94700520ee1b"
DistributedNext = "fab6aee4-877b-4bac-a744-3eca44acbb6f"
Graphs = "86223c79-3864-5bf0-83f7-82e725a168b6"
LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e"
MacroTools = "1914dd2f-81c6-5fcd-8719-6d5c9610ff09"
MemPool = "f9f48841-c794-520a-933b-121f7ba6ed94"
OnlineStats = "a15396b6-48d5-5d58-9928-6d29437db91e"
PrecompileTools = "aea7be01-6a6a-4083-8856-8a6e6704d82a"
Preferences = "21216c6a-2e73-6563-6e65-726566657250"
Profile = "9abbd945-dff8-562f-b5e8-e1ebf5ef1b79"
Random = "9a3f8284-a2c9-5f02-9a11-845980a1fd5c"
Requires = "ae029012-a4dd-5104-9daa-d747884805df"
@@ -24,38 +27,44 @@ TaskLocalValues = "ed4db957-447d-4319-bfb6-7fa9ae7ecf34"
TimespanLogging = "a526e669-04d3-4846-9525-c66122c55f63"
UUIDs = "cf7118a7-6976-5b1a-9a39-7adc72f591a4"

[weakdeps]
Colors = "5ae59095-9a9b-59fe-a467-6f913c188581"
DataFrames = "a93c6f00-e57d-5684-b7b6-d8193f3e46c0"
Distributions = "31c24e10-a181-5473-b8eb-7969acd0382f"
GraphViz = "f526b714-d49f-11e8-06ff-31ed36ee7ee0"
JSON3 = "0f8b85d8-7281-11e9-16c2-39a750bddbf1"
Plots = "91a5bcdd-55d7-5caf-9e0b-520d859cae80"
PythonCall = "6099a3de-0909-46bc-b1f4-468b9a2dfc0d"

[extensions]
DistributionsExt = "Distributions"
GraphVizExt = "GraphViz"
GraphVizSimpleExt = "Colors"
JSON3Ext = "JSON3"
PlotsExt = ["DataFrames", "Plots"]
PythonExt = "PythonCall"

[compat]
Colors = "0.12"
Adapt = "4.0.4"
Colors = "0.12, 0.13"
DataFrames = "1"
DataStructures = "0.18"
DistributedNext = "1.0.0"
Distributions = "0.25"
GraphViz = "0.2"
Graphs = "1"
JSON3 = "1"
MacroTools = "0.5"
MemPool = "0.4.6"
MemPool = "0.4.11"
OnlineStats = "1"
Plots = "1"
PrecompileTools = "1.2"
Preferences = "1.4.3"
PythonCall = "0.9"
Requires = "1"
ScopedValues = "1.1"
Statistics = "1"
StatsBase = "0.28, 0.29, 0.30, 0.31, 0.32, 0.33, 0.34"
TaskLocalValues = "0.1"
TimespanLogging = "0.1"
julia = "1.8"

[extensions]
GraphVizExt = "GraphViz"
GraphVizSimpleExt = "Colors"
PlotsExt = ["DataFrames", "Plots"]

[extras]
Colors = "5ae59095-9a9b-59fe-a467-6f913c188581"
DataFrames = "a93c6f00-e57d-5684-b7b6-d8193f3e46c0"
GraphViz = "f526b714-d49f-11e8-06ff-31ed36ee7ee0"
Plots = "91a5bcdd-55d7-5caf-9e0b-520d859cae80"

[weakdeps]
Colors = "5ae59095-9a9b-59fe-a467-6f913c188581"
DataFrames = "a93c6f00-e57d-5684-b7b6-d8193f3e46c0"
GraphViz = "f526b714-d49f-11e8-06ff-31ed36ee7ee0"
Plots = "91a5bcdd-55d7-5caf-9e0b-520d859cae80"
julia = "1.9"
32 changes: 30 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
<img src="docs/logo.jpg" alt="Dagger.jl">
<img src="docs/src/assets/logo-with-text.jpg" alt="Dagger.jl">

-----

@@ -68,11 +68,18 @@ more examples in the docs, and more use cases examples are welcome (just file
an issue or PR).

## Contributing Guide

Please see the roadmap for missing features or known bugs:

[Dagger Features and Roadmap](FEATURES_ROADMAP.md)

Other resources:

[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square)](http://makeapullrequest.com)
[![GitHub issues](https://img.shields.io/github/issues/JuliaParallel/Dagger.jl)](https://github.com/JuliaParallel/Dagger.jl/issues)
[![GitHub contributors](https://img.shields.io/github/contributors/JuliaParallel/Dagger.jl)](https://github.com/JuliaParallel/Dagger.jl/graphs/contributors)

Contributions are encouraged.
Contributions are encouraged.

There are several ways to contribute to our project:

@@ -83,6 +90,7 @@ There are several ways to contribute to our project:
Additional examples and documentation improvements are also very welcome.

## Resources

List of recommended Dagger.jl resources:
- Docs [![][docs-master-img]][docs-master-url]
- Videos
@@ -96,6 +104,26 @@ For help and discussion, we suggest asking in the following places:

[Julia Discourse](https://discourse.julialang.org/c/domain/parallel/34) and on the [Julia Slack](https://julialang.org/slack/) in the `#dagger` channel.

## References
```bibtex
@inproceedings{alomairy2024dynamic,
title={Dynamic Task Scheduling with Data Dependency Awareness Using Julia},
author={Alomairy, Rabab and Tome, Felipe and Samaroo, Julian and Edelman, Alan},
booktitle={2024 IEEE High Performance Extreme Computing Conference (HPEC)},
pages={1--7},
year={2024},
organization={IEEE}
}
```
```bibtex
@article{dagger2,
title={Efficient Dynamic Task Scheduling in Heterogeneous Environments with Julia},
author={Samaroo, Julian and Alomairy, Rabab and and Giordano, Mose and Edelman, Alan},
year={2024},
publisher={MIT Open Access Articles}
}
```

## Acknowledgements

We thank DARPA, Intel, and the NIH for supporting this work at MIT.
Loading