Skip to content

Commit

Permalink
Merge pull request #46 from JuliaGPU/tb/updates
Browse files Browse the repository at this point in the history
Updates
  • Loading branch information
maleadt authored Sep 18, 2024
2 parents e49ab06 + eb9ff54 commit 2f96129
Show file tree
Hide file tree
Showing 8 changed files with 57 additions and 14 deletions.
16 changes: 11 additions & 5 deletions index.md
Original file line number Diff line number Diff line change
Expand Up @@ -59,8 +59,14 @@ activities, we would be grateful if you could cite our work:

## Community

If you need help, or have questions about GPU programming in Julia, you can find members of
the community at:

- Julia Discourse, with a dedicated [GPU section](https://discourse.julialang.org/c/domain/gpu/11)
- Julia Slack ([register here](https://slackinvite.julialang.org/)), on the [#gpu channel](https://julialang.slack.com/messages/C689Y34LE/)
If you need help, or have questions about GPU programming in Julia, you can find
members of the community at:

- Julia Discourse, with a dedicated [GPU
section](https://discourse.julialang.org/c/domain/gpu/11)
- Julia Slack ([register here](https://slackinvite.julialang.org/)), on the
[#gpu channel](https://julialang.slack.com/messages/C689Y34LE/)
- [JuliaGPU office
hours](https://mit.zoom.us/j/92410737378?pwd=MWkrSkIzMEtRWkZHdm1XQmpNbm90UT09),
every other week at 2PM CET (check the [Julia community
calendar](https://julialang.org/community/#events) for more details).
17 changes: 13 additions & 4 deletions other.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,14 +9,23 @@ support as the NVIDIA and AMD back-ends.

## OpenCL

Programming OpenCL GPUs in Julia is much more limited than other supported platforms. On recent versions of Julia, only [OpenCL.jl](https://github.com/JuliaGPU/OpenCL.jl) is available. This package can be used to compile and execute GPU kernels written in OpenCL C.

Support for OpenCL is available through the
[OpenCL.jl](https://github.com/JuliaGPU/OpenCL.jl) package, which is currently
undergoing a rewrite to enable native support for Julia.

## ArrayFire

ArrayFire is a general-purpose software library that targets CPUs, GPUs, and other
accelerator hardware. The [ArrayFire.jl](https://github.com/JuliaGPU/ArrayFire.jl) package provides a Julia interface to this library, and makes it possible to program accelerators using an array abstraction built on the ArrayFire library.
accelerator hardware. The
[ArrayFire.jl](https://github.com/JuliaGPU/ArrayFire.jl) package provides a
Julia interface to this library, and makes it possible to program accelerators
using an array abstraction built on the ArrayFire library.

## SX-Aurora

The [NEC SX-Aurora Tsubasa](https://www.nec.com/en/global/solutions/hpc/sx/index.html) is a PCIe card which works as a Vector Computer. It can be programmed from Julia using the [VectorEngine.jl](https://github.com/sx-aurora-dev/VectorEngine.jl) package, which at the moment requires a custom Julia build using a LLVM fork. Support is expected to improve due NECs involement.
The [NEC SX-Aurora
Tsubasa](https://www.nec.com/en/global/solutions/hpc/sx/index.html) is a PCIe
card which works as a Vector Computer. It can be programmed from Julia using the
[VectorEngine.jl](https://github.com/sx-aurora-dev/VectorEngine.jl) package,
which at the moment requires a custom Julia build using a LLVM fork. Support is
expected to improve due NECs involement.
1 change: 0 additions & 1 deletion post/2023-09-19-cuda_5.0.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
+++
title = "CUDA.jl 5.0: Integrated profiler and task synchronization changes"
author = "Tim Besard"
external = true
abstract = """
CUDA.jl 5.0 is an major release that adds an integrated profiler to CUDA.jl, and reworks
how tasks are synchronized. The release is slightly breaking, as it changes how local
Expand Down
1 change: 0 additions & 1 deletion post/2023-11-07-cuda_5.1.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
+++
title = "CUDA.jl 5.1: Unified memory and cooperative groups"
author = "Tim Besard"
external = true
abstract = """
CUDA.jl 5.1 greatly improves the support of two important parts of the CUDA toolkit:
unified memory, for accessing GPU memory on the CPU and vice-versa, and cooperative
Expand Down
1 change: 0 additions & 1 deletion post/2024-04-26-cuda_5.2_5.3.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
+++
title = "CUDA.jl 5.2 and 5.3: Maintenance releases"
author = "Tim Besard"
external = true
abstract = """
CUDA.jl 5.2 and 5.3 are two minor release of CUDA.jl that mostly focus on bug
fixes and minor improvements, but also come with a number of interesting new
Expand Down
1 change: 0 additions & 1 deletion post/2024-05-24-oneapi_1.5.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
+++
title = "oneAPI.jl 1.5: Ponte Vecchio support and oneMKL improvements"
author = "Tim Besard"
external = true
abstract = """
oneAPI.jl v1.5 is a significant release that brings many new features, from extended
hardware support to greatly improved wrappers of the oneMLK math library."""
Expand Down
1 change: 0 additions & 1 deletion post/2024-05-28-cuda_5.4.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
+++
title = "CUDA.jl 5.4: Memory management mayhem"
author = "Tim Besard"
external = true
abstract = """
CUDA.jl 5.4 comes with many memory-management related changes that should improve
performance of memory-heavy applications, and make it easier to work with heterogeneous
Expand Down
33 changes: 33 additions & 0 deletions post/2024-09-18-cuda_5.5.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
+++
title = "CUDA.jl 5.5: Maintenance release"
author = "Tim Besard"
abstract = """
CUDA.jl 5.5 is a minor release that comes with a couple of small improvements
and new features."""
+++

{{abstract}}

The only important change is that the minimal required Julia version has been
bumped to 1.10, in anticipation of it becoming the next LTS release.


## New features

- Support for the upcoming Julia 1.11 release has been added, as well as for
[CUDA 12.6 (Update 1)](https://github.com/JuliaGPU/CUDA.jl/pull/2461).
- Launch overhead has been reduced by [avoiding double argument
conversions](https://github.com/JuliaGPU/CUDA.jl/pull/2472). Note that this
does not apply to kernels that are obtained using `@cuda launch=false`.
- CUSOLVER's dense wrappers have been improved by [Ben
Arthur](https://github.com/bjarthur), [now caching workspace
buffers](https://github.com/JuliaGPU/CUDA.jl/pull/2465). This should greatly
reduce the number of allocations needed for repeated calls.
- [Alexis Montoison](https://github.com/amontoison) has improved the CUSPARSE
wrappers, adding [conversions between sparse vectors and sparse
matrices](https://github.com/JuliaGPU/CUDA.jl/pull/2489) that enable [a
version of `gemv`](https://github.com/JuliaGPU/CUDA.jl/pull/2488) which
preserves sparsity of the inputs.
- CUDA.jl's CUFFT wrappers [now support
`Float16`](https://github.com/JuliaGPU/CUDA.jl/pull/2430), thanks to [Erik
Schnetter](https://github.com/eschnett).

0 comments on commit 2f96129

Please sign in to comment.