Fix various typos
Conflicts: README.md Change-Id: Ie296d503d16121a62fed1a208352ec2b81c97fd9
This commit is contained in:
committad av
Maneesh Gupta
förälder
961b7890c1
incheckning
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)
|
||||
- Code Indentation:
|
||||
- Tabs should be expanded to spaces.
|
||||
- Use 4 spaces indendation.
|
||||
- Use 4 spaces indentation.
|
||||
- Capitalization and Naming
|
||||
- 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.
|
||||
@@ -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,
|
||||
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
|
||||
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:
|
||||
### 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 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
|
||||
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.
|
||||
@@ -120,7 +120,7 @@ make
|
||||
|
||||
|
||||
## 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)
|
||||
|
||||
## 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.
|
||||
|
||||
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.
|
||||
- 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.
|
||||
@@ -73,7 +73,7 @@ Date: 2016.04.25
|
||||
- Create static library and link.
|
||||
- Set HIP_PATH to install.
|
||||
- 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.
|
||||
- HIP_TRACE_API now prints arguments to the HIP function (in addition to name of function).
|
||||
- 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)
|
||||
{
|
||||
...
|
||||
|
||||
@@ -31,8 +31,8 @@ accelerator language front-end. Here, NVCC is not used. Instead, the environm
|
||||
different kernel language or different compilation flow.
|
||||
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.
|
||||
As we will see below, HIP defines a Module API which provides similar explict control over code
|
||||
object managemenet.
|
||||
As we will see below, HIP defines a Module API which provides similar explicit control over code
|
||||
object management.
|
||||
|
||||
### cuCtx API
|
||||
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.
|
||||
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.
|
||||
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:
|
||||
|
||||
```
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# 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
|
||||
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).
|
||||
|
||||
- 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.
|
||||
- hcc = heterogeneous compute compiler, do not capitalize.
|
||||
|
||||
Referens i nytt ärende
Block a user