|
| 1 | +# `nvptx64-nvidia-cuda` |
| 2 | + |
| 3 | +**Tier: 2** |
| 4 | + |
| 5 | +This is the target meant for deploying code for Nvidia® accelerators based on their CUDA |
| 6 | +platform. |
| 7 | + |
| 8 | +## Target maintainers |
| 9 | + |
| 10 | +- Riccardo D'Ambrosio, https://github.com/RDambrosio016 |
| 11 | +- Kjetil Kjeka, https://github.com/kjetilkjeka |
| 12 | + |
| 13 | +<!-- FIXME: fill this out |
| 14 | +
|
| 15 | +## Requirements |
| 16 | +
|
| 17 | +Does the target support host tools, or only cross-compilation? Does the target |
| 18 | +support std, or alloc (either with a default allocator, or if the user supplies |
| 19 | +an allocator)? |
| 20 | +
|
| 21 | +Document the expectations of binaries built for the target. Do they assume |
| 22 | +specific minimum features beyond the baseline of the CPU/environment/etc? What |
| 23 | +version of the OS or environment do they expect? |
| 24 | +
|
| 25 | +Are there notable `#[target_feature(...)]` or `-C target-feature=` values that |
| 26 | +programs may wish to use? |
| 27 | +
|
| 28 | +What calling convention does `extern "C"` use on the target? |
| 29 | +
|
| 30 | +What format do binaries use by default? ELF, PE, something else? |
| 31 | +
|
| 32 | +## Building the target |
| 33 | +
|
| 34 | +If Rust doesn't build the target by default, how can users build it? Can users |
| 35 | +just add it to the `target` list in `config.toml`? |
| 36 | +
|
| 37 | +## Building Rust programs |
| 38 | +
|
| 39 | +Rust does not yet ship pre-compiled artifacts for this target. To compile for |
| 40 | +this target, you will either need to build Rust with the target enabled (see |
| 41 | +"Building the target" above), or build your own copy of `core` by using |
| 42 | +`build-std` or similar. |
| 43 | +
|
| 44 | +## Testing |
| 45 | +
|
| 46 | +Does the target support running binaries, or do binaries have varying |
| 47 | +expectations that prevent having a standard way to run them? If users can run |
| 48 | +binaries, can they do so in some common emulator, or do they need native |
| 49 | +hardware? Does the target support running the Rust testsuite? |
| 50 | +
|
| 51 | +## Cross-compilation toolchains and C code |
| 52 | +
|
| 53 | +Does the target support C code? If so, what toolchain target should users use |
| 54 | +to build compatible C code? (This may match the target triple, or it may be a |
| 55 | +toolchain for a different target triple, potentially with specific options or |
| 56 | +caveats.) |
| 57 | +
|
| 58 | +--> |
0 commit comments