Skip to content

Commit

Permalink
Update README.md
Browse files Browse the repository at this point in the history
  • Loading branch information
domcharrier authored Nov 16, 2021
1 parent c92ae89 commit 96e9cb8
Showing 1 changed file with 10 additions and 5 deletions.
15 changes: 10 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -39,11 +39,16 @@ that supports the Fortran 2003 standard (`f2003`).
These interfaces typically require to pass `type(c_ptr)` variables and the number of bytes to memory
management (e.g. `hipMalloc`) and math library routines (e.g. `hipblasDGEMM`).

If your compiler understands Fortran 2008 code (`f2008`), additional interfaces are compiled into the `hipfort`
modules and libraries. These directly take Fortran (array) variables and the number of
elements instead of `type(c_ptr)` variables and the number of bytes, respectively. This reduces the chance to introduce compile-time and runtime errors
If your compiler understands the Fortran 2008 (`f2008`) code constructs that occur in `hipfort`'s source and test files,
additional interfaces are compiled into the `hipfort` modules and libraries.
These directly take Fortran (array) variables and the number of
elements instead of `type(c_ptr)` variables and the number of bytes, respectively.
Therefore, they reduces the chance to introduce compile-time and runtime errors
into your code and makes it easier to read too.

> **NOTE**: If you plan to use the `f2008` interfaces, we recommend `gfortran` version `7.5.0` or newer
as we have observed problems with older versions.

### Example

While you could write the following using the `f2003` interfaces:
Expand Down Expand Up @@ -118,9 +123,9 @@ There are further subcategories per `hip*` or `roc*` library that is tested.

### Building a single test

> **NOTE** Only the `hip*` tests can be compiled for CUDA devices. The `roc*` tests cannot.
> **NOTE**: Only the `hip*` tests can be compiled for CUDA devices. The `roc*` tests cannot.
> **NOTE** The make targets append the linker flags for AMD devices to the `CFLAGS` variable per default.
> **NOTE**: The make targets append the linker flags for AMD devices to the `CFLAGS` variable per default.
To compile for AMD devices you can simply call `make` in the test directories.

Expand Down

0 comments on commit 96e9cb8

Please sign in to comment.