Fix various typos
Conflicts: README.md Change-Id: Ie296d503d16121a62fed1a208352ec2b81c97fd9
This commit is contained in:
committed by
Maneesh Gupta
parent
961b7890c1
commit
263dcfed83
+3
-3
@@ -93,7 +93,7 @@ Differences or limitations of HIP APIs as compared to CUDA APIs should be clearl
|
|||||||
## Coding Guidelines (in brief)
|
## Coding Guidelines (in brief)
|
||||||
- Code Indentation:
|
- Code Indentation:
|
||||||
- Tabs should be expanded to spaces.
|
- Tabs should be expanded to spaces.
|
||||||
- Use 4 spaces indendation.
|
- Use 4 spaces indentation.
|
||||||
- Capitalization and Naming
|
- Capitalization and Naming
|
||||||
- Prefer camelCase for HIP interfaces and internal symbols. Note HCC uses _ for separator.
|
- Prefer camelCase for HIP interfaces and internal symbols. Note HCC uses _ for separator.
|
||||||
This guideline is not yet consistently followed in HIP code - eventual compliance is aspirational.
|
This guideline is not yet consistently followed in HIP code - eventual compliance is aspirational.
|
||||||
@@ -120,7 +120,7 @@ Differences or limitations of HIP APIs as compared to CUDA APIs should be clearl
|
|||||||
|
|
||||||
- HIP_INIT_API() should be placed at the start of each top-level HIP API. This function will make sure the HIP runtime is initialized,
|
- HIP_INIT_API() should be placed at the start of each top-level HIP API. This function will make sure the HIP runtime is initialized,
|
||||||
and also constructs an appropriate API string for tracing and CodeXL marker tracing. The arguments to HIP_INIT_API should match
|
and also constructs an appropriate API string for tracing and CodeXL marker tracing. The arguments to HIP_INIT_API should match
|
||||||
those of the parent fucntion.
|
those of the parent function.
|
||||||
- ihipLogStatus should only be called from top-level HIP APIs,and should be called to log and return the error code. The error code
|
- ihipLogStatus should only be called from top-level HIP APIs,and should be called to log and return the error code. The error code
|
||||||
is used by the GetLastError and PeekLastError functions - if a HIP API simply returns, then the error will not be logged correctly.
|
is used by the GetLastError and PeekLastError functions - if a HIP API simply returns, then the error will not be logged correctly.
|
||||||
|
|
||||||
@@ -161,4 +161,4 @@ doxygen bug list.
|
|||||||
|
|
||||||
## Other Tips:
|
## Other Tips:
|
||||||
### Markdown Editing
|
### Markdown Editing
|
||||||
Recommended to use an offline Markown viewer to review documentation, such as Markdown Preview Plus extension in Chrome browser, or Remarkable.
|
Recommended to use an offline Markdown viewer to review documentation, such as Markdown Preview Plus extension in Chrome browser, or Remarkable.
|
||||||
|
|||||||
@@ -88,7 +88,7 @@ The HIP Runtime API code and compute kernel definition can exist in the same sou
|
|||||||
|
|
||||||
## HIP Portability and Compiler Technology
|
## HIP Portability and Compiler Technology
|
||||||
HIP C++ code can be compiled with either :
|
HIP C++ code can be compiled with either :
|
||||||
- On the Nvidia CUDA platform, HIP provides header file which translate from the HIP runtime APIs to CUDA runtime APIs. The header file contains mostly inlined
|
- On the NVIDIA CUDA platform, HIP provides header file which translate from the HIP runtime APIs to CUDA runtime APIs. The header file contains mostly inlined
|
||||||
functions and thus has very low overhead - developers coding in HIP should expect the same performance as coding in native CUDA. The code is then
|
functions and thus has very low overhead - developers coding in HIP should expect the same performance as coding in native CUDA. The code is then
|
||||||
compiled with nvcc, the standard C++ compiler provided with the CUDA SDK. Developers can use any tools supported by the CUDA SDK including the CUDA
|
compiled with nvcc, the standard C++ compiler provided with the CUDA SDK. Developers can use any tools supported by the CUDA SDK including the CUDA
|
||||||
profiler and debugger.
|
profiler and debugger.
|
||||||
@@ -120,7 +120,7 @@ make
|
|||||||
|
|
||||||
|
|
||||||
## More Examples
|
## More Examples
|
||||||
The GitHub repot [HIP-Examples](https://github.com/GPUOpen-ProfessionalCompute-Tools/HIP-Examples.git) contains a hipified vesion of the popular Rodinia benchmark suite.
|
The GitHub repository [HIP-Examples](https://github.com/GPUOpen-ProfessionalCompute-Tools/HIP-Examples.git) contains a hipified version of the popular Rodinia benchmark suite.
|
||||||
The README with the procedures and tips the team used during this porting effort is here: [Rodinia Porting Guide](https://github.com/GPUOpen-ProfessionalCompute-Tools/HIP-Examples/blob/master/rodinia_3.0/hip/README.hip_porting)
|
The README with the procedures and tips the team used during this porting effort is here: [Rodinia Porting Guide](https://github.com/GPUOpen-ProfessionalCompute-Tools/HIP-Examples/blob/master/rodinia_3.0/hip/README.hip_porting)
|
||||||
|
|
||||||
## Tour of the HIP Directories
|
## Tour of the HIP Directories
|
||||||
|
|||||||
+2
-2
@@ -3,7 +3,7 @@
|
|||||||
We have attempted to document known bugs and limitations - in particular the [HIP Kernel Language](docs/markdown/hip_kernel_language.md) document uses the phrase "Under Development", and the [HIP Runtime API bug list](http://gpuopen-professionalcompute-tools.github.io/HIP/bug.html) lists known bugs.
|
We have attempted to document known bugs and limitations - in particular the [HIP Kernel Language](docs/markdown/hip_kernel_language.md) document uses the phrase "Under Development", and the [HIP Runtime API bug list](http://gpuopen-professionalcompute-tools.github.io/HIP/bug.html) lists known bugs.
|
||||||
|
|
||||||
Upcoming:
|
Upcoming:
|
||||||
- Stability: Enforce perioidic host synchronization to reclaim resources if the application has launched a large
|
- Stability: Enforce periodic host synchronization to reclaim resources if the application has launched a large
|
||||||
number of commands (>1K) without synchronizing.
|
number of commands (>1K) without synchronizing.
|
||||||
- Register keyword now silently ignored on HCC (previously would emit warning).
|
- Register keyword now silently ignored on HCC (previously would emit warning).
|
||||||
- Doc updates: Add some more frequently asked questions to FAQ, fix TOC in some files, review.
|
- Doc updates: Add some more frequently asked questions to FAQ, fix TOC in some files, review.
|
||||||
@@ -73,7 +73,7 @@ Date: 2016.04.25
|
|||||||
- Create static library and link.
|
- Create static library and link.
|
||||||
- Set HIP_PATH to install.
|
- Set HIP_PATH to install.
|
||||||
- Make hipDevice and hipStream thread-safe.
|
- Make hipDevice and hipStream thread-safe.
|
||||||
- Prefered hipStream usage is still to create new streams for each new thread, but it works even if you don;t.
|
- Preferred hipStream usage is still to create new streams for each new thread, but it works even if you don;t.
|
||||||
- Improve automated platform detection: If AMD GPU is installed and detected by driver, default HIP_PLATFORM to hcc.
|
- Improve automated platform detection: If AMD GPU is installed and detected by driver, default HIP_PLATFORM to hcc.
|
||||||
- HIP_TRACE_API now prints arguments to the HIP function (in addition to name of function).
|
- HIP_TRACE_API now prints arguments to the HIP function (in addition to name of function).
|
||||||
- Deprecate hipDeviceGetProp (Replace with hipGetDeviceProp)
|
- Deprecate hipDeviceGetProp (Replace with hipGetDeviceProp)
|
||||||
|
|||||||
@@ -105,7 +105,7 @@ HIP parses the `__noinline__` and `__forceinline__` keywords and converts them t
|
|||||||
|
|
||||||
|
|
||||||
```
|
```
|
||||||
// Example psuedocode introducing hipLaunchKernel:
|
// Example pseudo code introducing hipLaunchKernel:
|
||||||
__global__ MyKernel(hipLaunchParm lp, float *A, float *B, float *C, size_t N)
|
__global__ MyKernel(hipLaunchParm lp, float *A, float *B, float *C, size_t N)
|
||||||
{
|
{
|
||||||
...
|
...
|
||||||
|
|||||||
@@ -31,8 +31,8 @@ accelerator language front-end. Here, NVCC is not used. Instead, the environm
|
|||||||
different kernel language or different compilation flow.
|
different kernel language or different compilation flow.
|
||||||
Other environments have many kernels and do not want them to be all loaded automatically.
|
Other environments have many kernels and do not want them to be all loaded automatically.
|
||||||
The Module functions can be used to load the generated code objects and launch kernels.
|
The Module functions can be used to load the generated code objects and launch kernels.
|
||||||
As we will see below, HIP defines a Module API which provides similar explict control over code
|
As we will see below, HIP defines a Module API which provides similar explicit control over code
|
||||||
object managemenet.
|
object management.
|
||||||
|
|
||||||
### cuCtx API
|
### cuCtx API
|
||||||
The Driver API defines "Context" and "Devices" as separate entities.
|
The Driver API defines "Context" and "Devices" as separate entities.
|
||||||
@@ -144,7 +144,7 @@ table shows the type equivalence to enable this interaction.
|
|||||||
The hipModule interface does not support the hipModuleLoadEx function, which is used to control PTX compilaton options.
|
The hipModule interface does not support the hipModuleLoadEx function, which is used to control PTX compilaton options.
|
||||||
HCC does not use PTX and does not support the same compilation options.
|
HCC does not use PTX and does not support the same compilation options.
|
||||||
In fact, HCC code objects always contain fully compiled ISA and do not require additional compilation as part of the load step.
|
In fact, HCC code objects always contain fully compiled ISA and do not require additional compilation as part of the load step.
|
||||||
Code which requires this functionaly should use platform-specific coding, calling `cuModuleLoadEx`
|
Code which requires this functionally should use platform-specific coding, calling `cuModuleLoadEx`
|
||||||
on the NVCC path and hipModuleLoad on the hcc path. For example:
|
on the NVCC path and hipModuleLoad on the hcc path. For example:
|
||||||
|
|
||||||
```
|
```
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
# HIP Porting Guide
|
# HIP Porting Guide
|
||||||
In addition to providing a portable C++ programmming environement for GPUs, HIP is designed to ease
|
In addition to providing a portable C++ programming environment for GPUs, HIP is designed to ease
|
||||||
the porting of existing CUDA code into the HIP environment. This section describes the available tools
|
the porting of existing CUDA code into the HIP environment. This section describes the available tools
|
||||||
and provides practical suggestions on how to port CUDA code and work through common issues.
|
and provides practical suggestions on how to port CUDA code and work through common issues.
|
||||||
|
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ The default device can be set with hipSetDevice.
|
|||||||
- hcc = Heterogeneous Compute Compiler (https://bitbucket.org/multicoreware/hcc/wiki/Home).
|
- hcc = Heterogeneous Compute Compiler (https://bitbucket.org/multicoreware/hcc/wiki/Home).
|
||||||
|
|
||||||
- hipify - tool to convert CUDA(R) code to portable C++ code.
|
- hipify - tool to convert CUDA(R) code to portable C++ code.
|
||||||
- hipconfig - tool to report various confoguration properties of the target platform.
|
- hipconfig - tool to report various configuration properties of the target platform.
|
||||||
|
|
||||||
- nvcc = nvcc compiler, do not capitalize.
|
- nvcc = nvcc compiler, do not capitalize.
|
||||||
- hcc = heterogeneous compute compiler, do not capitalize.
|
- hcc = heterogeneous compute compiler, do not capitalize.
|
||||||
|
|||||||
Reference in New Issue
Block a user