From 5a7036d952645d1c11fede91fed54ae3801708dd Mon Sep 17 00:00:00 2001 From: Sina Mostafanejad Date: Mon, 30 Aug 2021 10:49:28 -0400 Subject: [PATCH] CUDA Nsight Systems Profilers and Memory Model (#1) * firing up the intermediate-level tutorial by refreshing the templates * starts writing the first chapter * starts the memory hierarchy section * adds more text to the registers subsubsection * adds text to the shared memory subsubsection * starts the constant memory subsubsection * adds more text to the shared memory subsubsection * finishes the constant memory subsubsection * finishes the texture memory subsubsection * starts the memory management subsection * adds text to device memory manacement subsection * proceeds with zero-copy memory subsubsection * starts the unified memory subsubsection * finishes the first draft of CUDA memory model chapter * rearranges the lessons and adds some text to the profiling chapter * adds some text to CLI section * adds materials regarding to Nsight Compute * finishes the CLI subsection of the Nsight Systems section * finishes the nsys CLI section * adds minor changes before starting the GUI section * adds the memory hierarchy figure * removes minor typo * adds figures to CUDA Memory Model chapter --- .gitignore | 2 +- _config.yml | 4 +- _episodes/01-introduction.md | 15 - _episodes/01-profiling.md | 333 ++++++++++++++++++++ _episodes/02-cuda-memory-model.md | 505 ++++++++++++++++++++++++++++++ fig/Sources/UVA.pdf | Bin 0 -> 132703 bytes fig/Sources/memory_hierarchy.pdf | Bin 0 -> 171405 bytes fig/UVA.png | Bin 0 -> 54173 bytes fig/memory_hierarchy.png | Bin 0 -> 69681 bytes index.md | 28 +- reference.md | 14 +- setup.md | 185 +++++++++-- 12 files changed, 1037 insertions(+), 49 deletions(-) delete mode 100644 _episodes/01-introduction.md create mode 100644 _episodes/01-profiling.md create mode 100644 _episodes/02-cuda-memory-model.md create mode 100644 fig/Sources/UVA.pdf create mode 100644 fig/Sources/memory_hierarchy.pdf create mode 100644 fig/UVA.png create mode 100644 fig/memory_hierarchy.png diff --git a/.gitignore b/.gitignore index 27af20d..5e9b2d5 100644 --- a/.gitignore +++ b/.gitignore @@ -9,4 +9,4 @@ _site .Rproj.user .Rhistory .RData - +*.lock diff --git a/_config.yml b/_config.yml index 719c67a..584e5f5 100644 --- a/_config.yml +++ b/_config.yml @@ -10,7 +10,7 @@ carpentry: "swc" # Overall title for pages. -title: "Lesson Title" +title: "CUDA C/C++ Programming and GPU Architecture: A Closer Look" # Life cycle stage of the lesson # possible values: "pre-alpha", "alpha", "beta", "stable" @@ -26,7 +26,7 @@ kind: "lesson" # Magic to make URLs resolve both locally and on GitHub. # See https://help.github.com/articles/repository-metadata-on-github-pages/. # Please don't change it: / is correct. -repository: MolSSI-Education/undergrad_workshop +repository: MolSSI-Education/gpu_programming_intermediate # Email address, no mailto: email: "education@molssi.org" diff --git a/_episodes/01-introduction.md b/_episodes/01-introduction.md deleted file mode 100644 index 2e156c2..0000000 --- a/_episodes/01-introduction.md +++ /dev/null @@ -1,15 +0,0 @@ ---- -title: "Introduction" -teaching: 0 -exercises: 0 -questions: -- "Key question (FIXME)" -objectives: -- "First learning objective. (FIXME)" -keypoints: -- "First key point. Brief Answer to questions. (FIXME)" ---- -FIXME - -{% include links.md %} - diff --git a/_episodes/01-profiling.md b/_episodes/01-profiling.md new file mode 100644 index 0000000..45822d5 --- /dev/null +++ b/_episodes/01-profiling.md @@ -0,0 +1,333 @@ +--- +title: "Profiling with NVIDIA Nsight" +teaching: 60 +exercises: 0 +questions: +- "What is profiling? Why and how is it useful for parallelization?" +- "What are NVIDIA Nsight Systems and Nsight Compute? What do they do and how can I use them?" +objectives: +- "Mastering best practices in profiling-driven approach in CUDA C/C++ programming" +keypoints: +- "NVIDIA Nsight Systems" +- "Profiling-driven CUDA C/C++ programming" +- "APOD application design cycle" +--- + +- [1. Overview](#1-overview) +- [2. NVIDIA Nsight Systems](#2-nvidia-nsight-systems) + - [2.1. Command Line Interface Profiler](#21-command-line-interface-profiler) + - [2.1.1. CUDA API Statistics](#211-cuda-api-statistics) + - [2.1.2. CUDA Kernel Statistics](#212-cuda-kernel-statistics) + - [2.1.3. CUDA Memory Operations Statistics](#213-cuda-memory-operations-statistics) + - [2.1.4. Operating System Runtime API Statistics](#214-operating-system-runtime-api-statistics) + - [2.2. Graphical User Interface Profiler](#22-graphical-user-interface-profiler) +- [3. NVIDIA Nsight Compute](#3-nvidia-nsight-compute) + - [3.1. Command Line Interface Profiler](#31-command-line-interface-profiler) + - [3.2. Graphical User Interface Profiler](#32-graphical-user-interface-profiler) +- [4. Example: Vector Addition (AXPY)](#4-example-vector-addition-axpy) +- [5. Example: Matrix Addition](#5-example-matrix-addition) + +## 1. Overview + +The present tutorial is a continuation of [MolSSI's Fundamentals of Heterogeneous Parallel Programming +with CUDA C/C++ at the beginner level](http://education.molssi.org/gpu_programming_beginner) where we +provide a deeper look into the close relationship between the GPU architecture and the application performance. +Adopting a systematic approach to leverage this relationship for writing more efficient programs, +we have based our approach on NVIDIA's [Best Practices Guide for CUDA C/C++](https://docs.nvidia.com/ +cuda/cuda-c-best-practices-guide/index.html). These best practices guidelines encourage users to follow the **Asses**, +**Parallelize**, **Optimize** and **Deploy** ([**APOD**](https://docs.nvidia.com/cuda/cuda-c-best-practices-guide/ +index.html#assess-parallelize-optimize-deploy)) application design cycle for an efficient and rapid recognition +of the parallelization opportunities in programs and improving the code quality and performance. + +The NVIDIA Nsight family consists of three members: + +- **Nsight Systems**: A comprehensive system-wide tool for the application performance analysis and optimization +- **Nsight Compute**: A professional tool for kernel-level performance analysis and debugging +- **Nsight Graphics**: An optimization and debugging software for graphical workflows such as rendering performance *etc.* + +NVIDIA recommends developers to start the profiling process by using **Nsight Systems** in order to identify the most important and impactful +system-wide opportunities for optimization and performance improvement. Further optimizations and fine-tunings at the CUDA kernel and API +level can be performed through **Nsight Compute**. In our analysis for performance improvement and code optimization, we will adopt a +quantitative profile-driven approach and make an extensive use of profiling tools provided by NVIDIA's Nsight Systems and Nsight Compute. + +## 2. NVIDIA Nsight Systems + +NVIDIA Nsight Systems is a system-wide performance analysis tool and sampling profiler with tracing feature which allows users to collect and +process CPU-GPU performance statistics. NVIDIA Nsight Systems recognizes three main activities: 1) profiling, 2) Sampling, and 3) tracing. +The performance data collection is called profiling. In order to collect information on the timings spent on function calls during +the program, the profiler periodically stops the application under investigation (profilee) to collect information on call stacks +of active threads (backtraces). The sampling results are generally less precise when the number of samples are small. Tracing refers +to the collection of precise quantitative information about a variety of activities that might be happening in profilee or the OS. +The Nsight Systems collects the information in a profiling session which usually involves both sampling and tracing activities. + +NVIDIA Nsight Systems offers two major interfaces, through which users can profile an application: + +- Command-Line Interface (CLI) +- Graphical User Interface (GUI) + +In the following sections, we overview the mechanics of using each method in details. + +### 2.1. Command Line Interface Profiler + +The general form of the Nsight Systems command line interface (CLI) profiler, **nsys**, is similar to that of +nvprof we saw in [MolSSI's Fundamentals of Heterogeneous Parallel Programming with CUDA C/C++ at the beginner +level](http://education.molssi.org/gpu_programming_beginner) + +~~~ +$ nsys [command_switch] [optional command_switch_options] [optional application_options] +~~~ +{: .language-bash} + +A list of possible values for `command_switch` and optional `command_switch_options` are provided in [Nsight Systems s +User Manual](https://docs.nvidia.com/nsight-systems/UserGuide/index.html#cli-options). The `` refers to the name of +the profilee executable. + +Despite a rather complicated form mentioned above, the following command will be sufficient for the majority of our applications +in this tutorial + +~~~ +$ nsys profile --stats=true +~~~ +{: .language-bash} + +Here, the `--stats=true` option triggers the post processing and generation of the statistical data summary collected by +the Nsight Systems profiler. For sample outputs from using the `--stats` option with CLI profiler in various OSs, see +the [Nsight Systems' documentation](https://docs.nvidia.com/nsight-systems/UserGuide/index.html#example-output-stats-option). + +The CLI gathers the results in an intermediate *.qdstrm* file which needs to be further processed either by importing it in a GUI +or using the standalone Qdstrm Importer in order to generate an optimized *.qdrep* report file. For portability reasons and future +analysis of the reports on the same or different host machine and sharing the results, the .qdrep formant should be used. + +> ## Note: +> In order to import a .qdstrm file in a GUI, the host GUI and CLI version must match. The host GUI is only backwards compatible with +> .qdrep files. +{: .discussion} + +At the time of writing this tutorial, Nsight Systems attempts to convert the intermediate report files to their .qdrep report +counterparts with the same names after finishing the profiling run if the necessary set of required libraries are available. +See [Nsight Systems' documentation](https://docs.nvidia.com/nsight-systems/UserGuide/index.html#importing-qdstrm-files) for further +details. It is important to note that setting the `--stats` option to `True` results in the creation of a SQLite database after the +collection of results by Nsight Systems. If a large amount of data is captured, creating the corresponding database(s) may require longer +than normal time periods to complete. For safety reasons, Nsight Systems does not rewrite the results on the same output files by default. +If intended otherwise, users can adopt the `-f` or `--force-overwrite=true` options to overwrite the (.qdstrm, .qdrep, and .sqlite) result files. + +Let us run this command on the [vector sum example](https://github.com/MolSSI-Education/gpu_programming_beginner/tree/gh-pages/src/ +gpu_vector_sum/v2_cudaCode) from our beginner level GPU workshop. In order to be able to profile a program, an executable application file +is required. Let's compile our example code and run it + +~~~ +$ nvcc gpuVectorSum.cu cCode.c cudaCode.cu -o vecSum --run +~~~ +{: .language-bash} + +The aforementioned command gives the following results + +~~~ +Kicking off ./vecSum + +GPU device GeForce GTX 1650 with index (0) is set! + +Vector size: 16777216 floats (64 MB) + +Elapsed time for dataInitializer: 0.757924 second(s) +Elapsed time for arraySumOnHost: 0.062957 second(s) +Elapsed time for arraySumOnDevice <<< 16384, 1024 >>>: 0.001890 second(s) + +Arrays are equal. +~~~ +{: .output} + +The `--run` flag runs the resulting executable (here, `vecSum`) after compilation. Now, we have a program executable +ready to be profiled + +~~~ +$ nsys profile --stats=true vecSum +~~~ +{: .language-bash} + +The output of a `nsys profile --stats=true ` commands has three main sections: 1) the application output(s), if any; 2) +summary of processing reports along with their temporary storage destination folders; and 3) profiling statistics. +The first section is exactly the same as the program output given above. The second part of the profiler output yields processing details +about the .qdstrm, .qdrep, and .sqlite report files and their temporary storage folders. + +~~~ +Processing events... +Capturing symbol files... +Saving temporary "/tmp/nsys-report-2d75-dd10-9860-d729.qdstrm" file to disk... +Creating final output files... + +Processing [==============================================================100%] +Saved report file to "/tmp/nsys-report-2d75-dd10-9860-d729.qdrep" +Exporting 1424 events: [==================================================100%] + +Exported successfully to +/tmp/nsys-report-2d75-dd10-9860-d729.sqlite +~~~ +{: .output} + +The profiling statistics is the last part of our `nsys profile --stats=true` output, which consists of four separate +sections: + +- **CUDA API Statistics** +- **CUDA Kernel Statistics** +- **CUDA Memory Operations Statistics** (in terms of time or size) +- **Operating System Runtime API Statistics** + +Let us overview each section one by one and see what types of information is available to us for performance analysis without +going though the details of each entry and analyzing the numbers. + +#### 2.1.1. CUDA API Statistics + +[CUDA API statistics report tables](https://docs.nvidia.com/nsight-systems/UserGuide/index.html#cudaapisum) have seven columns, +in which all timings are in nanoseconds (ns): + +1. **Time (%)**: The percentage of the **Total Time** for all calls to the function listed in the **Name** column +2. **Total Time (ns)**: The total execution time of all calls to the function listed in the **Name** column +3. **Num Calls**: The number of calls to the function listed in the **Name** column +4. **Average**: The average execution time of the function listed in the **Name** column +5. **Minimum**: The smallest execution time among the current set of function calls to the function listed in the **Name** column +6. **Maximum**: The largest execution time among the current set of function calls to the function listed in the **Name** column +7. **Name**: The name of the function being profiled + +~~~ +CUDA API Statistics: + + Time(%) Total Time (ns) Num Calls Average Minimum Maximum Name + ------- --------------- --------- ------------- ---------- ----------- --------------------- + 87.2 415,182,743 3 138,394,247.7 519,539 414,129,668 cudaMalloc + 12.3 58,403,179 4 14,600,794.8 12,721,839 17,162,836 cudaMemcpy + 0.4 1,909,047 1 1,909,047.0 1,909,047 1,909,047 cudaDeviceSynchronize + 0.1 613,510 3 204,503.3 160,057 280,734 cudaFree + 0.0 41,222 1 41,222.0 41,222 41,222 cudaLaunchKernel +~~~ +{: .output} + +#### 2.1.2. CUDA Kernel Statistics + +[CUDA Kernel statistics report summary](https://docs.nvidia.com/nsight-systems/UserGuide/index.html#gpukernsum) has seven columns, +in which all timings are in nanoseconds (ns): + +1. **Time (%)**: The percentage of the **Total Time** for all kernel executions listed in the **Name** column +2. **Total Time (ns)**: The total execution time of all kernel launches listed in the **Name** column +3. **Instances**: The number of kernel launches listed in the **Name** column +4. **Average**: The average execution time of the kernel listed in the **Name** column +5. **Minimum**: The smallest execution time among the current set of kernel launches listed in the **Name** column +6. **Maximum**: The largest execution time among the current set of kernel launches listed in the **Name** column +7. **Name**: The name of the GPU kernels being profiled + +~~~ +CUDA Kernel Statistics: + + Time(%) Total Time (ns) Instances Average Minimum Maximum Name + ------- --------------- --------- ----------- --------- --------- --------------------------------------------- + 100.0 1,781,674 1 1,781,674.0 1,781,674 1,781,674 arraySumOnDevice(float*, float*, float*, int) +~~~ +{: .output} + +#### 2.1.3. CUDA Memory Operations Statistics + +CUDA Memory Operations reports are tabulated by [time](https://docs.nvidia.com/nsight-systems/UserGuide/index.html#gpumemtimesum) +(in ns) involving seven columns: + +1. **Time (%)**: The percentage of the **Total Time** for all memory operations listed in the **Operation** column +2. **Total Time (ns)**: The total execution time of all memory operations listed in the **Operation** column +3. **Operations**:The number of times the memory operations listed in the **Operation** column have been executed +4. **Average**: The average memory size used for executing the **Operation**(s) +5. **Minimum**: The smallest execution time among the current set of **Operation**(s) +6. **Maximum**: The largest execution time among the current set of **Operation**(s) +7. **Operation**: The name of the memory operation being profiled + +~~~ +CUDA Memory Operation Statistics (by time): + + Time(%) Total Time (ns) Operations Average Minimum Maximum Operation + ------- --------------- ---------- ------------ ---------- ---------- ------------------ + 77.2 44,485,334 3 14,828,444.7 12,579,141 16,962,494 [CUDA memcpy HtoD] + 22.8 13,110,889 1 13,110,889.0 13,110,889 13,110,889 [CUDA memcpy DtoH] +~~~ +{: .output} + +or by [size](https://docs.nvidia.com/nsight-systems/UserGuide/index.html#gpumemsizesum) (in kB) consisting of +six columns: + +1. **Total**: The total amount of GPU memory used for the memory operations listed in the **Operation** column +2. **Operations**: The number of times the memory operations listed in the **Operation** column have been executed +3. **Average**: The average execution time of the **Operation**(s) +4. **Minimum**: The minimum amount of memory used among the current set of memory operations **Operation**(s) executed +5. **Maximum**: The maximum amount of memory used among the current set of memory operations **Operation**(s) executed +6. **Operation**: The name of the memory operation being profiled + +~~~ +CUDA Memory Operation Statistics (by size in KiB): + + Total Operations Average Minimum Maximum Operation + ----------- ---------- ---------- ---------- ---------- ------------------ + 65,536.000 1 65,536.000 65,536.000 65,536.000 [CUDA memcpy DtoH] + 196,608.000 3 65,536.000 65,536.000 65,536.000 [CUDA memcpy HtoD] +~~~ +{: .output} + +#### 2.1.4. Operating System Runtime API Statistics + +[The OS Runtime API report table](https://docs.nvidia.com/nsight-systems/UserGuide/index.html#osrtsum) has seven columns, +in which all timings are in nanoseconds (ns): + +1. **Time (%)**: The percentage of the **Total Time** for all calls to the function listed in the **Name** column +2. **Total Time (ns)**: The total execution time of all calls to the function listed in the **Name** column +3. **Num Calls**: The number of calls to the function listed in the **Name** column +4. **Average**: The average execution time of the function listed in the **Name** column +5. **Minimum**: The smallest execution time among the current set of function calls to the function listed in the **Name** column +6. **Maximum**: The largest execution time among the current set of function calls to the function listed in the **Name** column +7. **Name**: The name of the function being profiled + +~~~ +Operating System Runtime API Statistics: + + Time(%) Total Time (ns) Num Calls Average Minimum Maximum Name + ------- --------------- --------- ------------ ------- ----------- -------------- + 85.5 501,135,238 16 31,320,952.4 19,438 100,185,161 poll + 13.5 78,934,009 674 117,112.8 1,191 11,830,047 ioctl + 0.5 2,810,648 87 32,306.3 1,724 838,818 mmap + 0.2 899,070 82 10,964.3 4,605 27,860 open64 + 0.1 731,813 10 73,181.3 15,345 325,547 sem_timedwait + 0.1 412,876 28 14,745.6 1,414 272,205 fopen + 0.0 291,176 5 58,235.2 27,768 110,522 pthread_create + 0.0 196,169 3 65,389.7 62,525 67,914 fgets + 0.0 82,791 4 20,697.8 3,946 56,969 fgetc + 0.0 59,983 10 5,998.3 3,172 14,405 munmap + 0.0 52,364 22 2,380.2 1,201 8,422 fclose + 0.0 47,041 11 4,276.5 2,333 6,156 write + 0.0 36,940 6 6,156.7 4,222 8,393 fread + 0.0 30,565 5 6,113.0 4,716 7,174 open + 0.0 26,866 12 2,238.8 1,025 7,491 fcntl + 0.0 24,537 13 1,887.5 1,315 2,772 read + 0.0 9,755 2 4,877.5 3,702 6,053 socket + 0.0 7,798 1 7,798.0 7,798 7,798 connect + 0.0 7,306 1 7,306.0 7,306 7,306 pipe2 + 0.0 2,033 1 2,033.0 2,033 2,033 bind + 0.0 1,315 1 1,315.0 1,315 1,315 listen +~~~ +{: .output} + +So far, we have demonstrated that the nsys CLI profiler provides a comprehensive report on statistics of CUDA Runtime +APIs, GPU kernel executions, CUDA Memory Operations, and OS Runtime API calls. These reports provide useful information +about the performance of the application and offer a great tool for adopting the APOD cycle for both analysis and +performance optimization. In addition to the CLI profiler, NVIDIA offers profiling tools using GUIs. These are convenient +ways to analyze profiling reports or compare performance results from different profiling runs on the same application. +In the following sections, we overview the main aspects of the NVIDIA Nsight Systems' GUI profiler. + +### 2.2. Graphical User Interface Profiler + + + +## 3. NVIDIA Nsight Compute + +### 3.1. Command Line Interface Profiler + +### 3.2. Graphical User Interface Profiler + +## 4. Example: Vector Addition (AXPY) + +## 5. Example: Matrix Addition + +{% include links.md %} \ No newline at end of file diff --git a/_episodes/02-cuda-memory-model.md b/_episodes/02-cuda-memory-model.md new file mode 100644 index 0000000..83d4f43 --- /dev/null +++ b/_episodes/02-cuda-memory-model.md @@ -0,0 +1,505 @@ +--- +title: "CUDA Memory Model: Basics" +teaching: 60 +exercises: 0 +questions: +- "What is CUDA Memory Model?" +- "What is the principle of locality and how does it reduce the memory access latency?" +- "Why is there a memory hierarchy and how is it defined?" +objectives: +- "Understanding the CUDA Memory Model and its role in CUDA C/C++ programming" +- "Learning about memory hierarchy and how to adopt it to write an efficient program" +- "Mastering the details of the host-device memory management system" +keypoints: +- "CUDA memory model" +- "Memory hierarchy" +- "Host-device memory management" +--- + +> ## Table of Contents +> - [1. Overview](#1-overview) +> - [2. CUDA Memory Model](#2-cuda-memory-model) +> - [2.1. Principle of Locality](#21-principle-of-locality) +> - [2.2. Memory Hierarchy](#22-memory-hierarchy) +> - [2.2.1. Registers](#221-registers) +> - [2.2.2. Local Memory](#222-local-memory) +> - [2.2.3. Shared Memory](#223-shared-memory) +> - [2.2.4. Constant Memory](#224-constant-memory) +> - [2.2.5. Texture Memory](#225-texture-memory) +> - [2.2.6. Global Memory](#226-global-memory) +> - [2.2.7. GPU Cache Space](#227-gpu-cache-space) +> - [2.3. Host-Device Memory Management](#23-host-device-memory-management) +> - [2.3.1. Pinned Memory](#231-pinned-memory) +> - [2.3.2. Zero-copy Memory](#232-zero-copy-memory) +> - [2.3.3. Unified Virtual Addressing](#233-unified-virtual-addressing) +> - [2.3.4. Unified Memory](#234-unified-memory) +{: .prereq} + + +In [MolSSI's Fundamentals of Heterogeneous Parallel Programming with CUDA + C/C++ at the beginner level](http://education.molssi.org/gpu_programming_beginner), +we have provided a comprehensive presentation of the CUDA programming, compilation +and execution models. These models layout the fundamental aspects of CUDA programming +platform and expose various conceptual parallelism abstractions at the logical +architectural and application levels. + +This lesson extends the scope of NVIDIA's heterogeneous parallelization platform to +**CUDA memory model**, which exposes a unified hierarchical memory abstraction for both +host and device memory systems. Here, we discuss CUDA memory model, one of the most important +topics in heterogeneous parallel programming with CUDA C/C++. CUDA exposes various type of +programmable device memory types in a hierarchical structure which allows user to leverage +additional levels of parallelism, an advantage that is not usually available with +non-programmable memory in CPU parallelization. Using multiple examples, we demonstrate how +a deeper knowledge of GPU architecture and memory types allows the programmer to design more +efficient parallel program using CUDA memory model. + +## 2. CUDA Memory Model + +Before getting our hands dirty with the technicalities of coding, let us delve into the important +aspects of the of CUDA memory model in some details. + +### 2.1. Principle of Locality + + The CUDA memory model is based on the **locality principle** which reduces the memory access + latency through an efficient way of reusing data. There are two types of locality: + +- **Spatial locality** (locality in space) +- **Temporal locality** (locality in time) + +Spatial locality assumes that once a memory address is referenced, its neighboring memory locations +become more likely to be referenced as well. As example is when the processor attempts to access a +contiguous array of data stored on the global memory. Temporal locality assumes that once a memory +location is accessed, there is a higher probability for it to be referenced again in a short period +of time and lower probabilities at later times. + +In [Fundamentals of Heterogeneous Parallel Programming with CUDA C/C++](http://education.molssi.org/ +gpu_programming_beginner/01-introduction/#2-parallel-programming-paradigms), we described the main +features of a typical modern GPU architecture which comparing them with those of GPU. There, +we explained that one of the most important hardware features of the CPU is its relatively +large cache memory size which allows it to improve the application optimization process by +benefiting from temporal and spatial locality. + +Allows users to fully take control of the data flow within programmable memory levels such as registers, + shared memory *etc.* . Here, + +### 2.2. Memory Hierarchy + +In order to improve the performance of the memory operations, CUDA memory model adopts +the **memory hierarchy** consisting of various memory levels with different bandwidths, latencies, +and capacities. Within this hierarchy, as the capacity of the memory type increases, the latency also +increases. + +As we discussed in [Fundamentals of Heterogeneous Parallel Programming with CUDA C/C++](http://education.molssi.org/ +gpu_programming_beginner/01-introduction/#2-parallel-programming-paradigms), +both CPU and GPU main memory spaces are constructed by dynamic random access memory (DRAM). The lower-latency +memory units such as cache, however, are built using static random access memory (SRAM). As such, +based on the memory hierarchy, it would be logical to keep the data that are actively used by the processor +in the low-latency and low-capacity memory spaces and store the less frequently used ones in high-latency high-capacity +memory spaces for possible future usage. + +Although both CPU and GPU adopt similar hierarchical memory design models, CUDA programming model exposes much more +control over and access to memory levels in the hierarchy than what is possible with CPUs. There are two main memory +categories: + +- **Non-programmable** where programmer has no control over data flow in the memory unit, and +- **Programmable** where the user is in charge of data load/storage within the memory unit. + +The CPU L1 and L2 cache are examples of non-programmable memories. Nevertheless, CUDA memory +model exposes several types of programmable memory spaces on the device, each with its own +*lifetime*, *scope* and *caching rules*: + +- **Registers** +- **Shared memory** +- **Local memory** +- **Constant memory** +- **Texture memory** +- **Global memory** + +The following figure provides a simplified representation of the memory hierarchy. + +![Figure 1](../fig/memory_hierarchy.png) + +As the figure illustrates, each thread within a kernel has its own private local memory. +Shared memory belongs to all threads in a block. The contents in the shared memory are accessible +to all threads within a block and have the same lifetime as that of the thread block. The contents of +constant, texture and global memories have the same lifetime as that of the application and are +accessible to all threads on the device; however, their applications are quite different, which we +will explain, shortly. + +#### 2.2.1. Registers + +Registers are precious resources partitioned among active warps on the GPU with the lowest capacity +and highest data transfer speed. Variables stored on registers such as automatic kernel variables +declared without qualifiers or arrays declared in kernels with constant referencing indices determined +at the compilation time, are private to each thread. According to the principle of locality, the data +being held in registers are often frequently accessed by kernels while their lifetime ends with the +completion of kernel execution. + +Using fewer registers within kernels can lead to higher performance resulting from the increased +[**occupancy**](https://docs.nvidia.com/cuda/cuda-runtime-api/group__CUDART__OCCUPANCY.html#group__CUDART__OCCUPANCY) +of the thread locks per streaming multiprocessor (SM). + +> ## Note: +> Occupancy is a helpful performance metric which is based on the ideal intention of +> keeping as many device cores occupied as possible. Occupancy is defined as the ration +> of active warps to the maximum number of warps per SM. Although it is a useful metric for +> analysis and description of the observed benchmark profiling logs, it should not be a hard +> and only reference for code optimization. There can be many cases that increased occupancy +> does not always mean improved performance. We will discuss profiling performance metrics in +> [here](). +{: .discussion} + +On the other hand, if a kernel attempts to utilize more registers than the limit imposed by the +hardware resources, the excess memory would spill over local memory. The **register spill** and +[**register pressure**](https://docs.nvidia.com/cuda/cuda-c-best-practices-guide/index.html#register-pressure) +should be avoided if possible due to its serious performance consequences. Here, we provide two ways +to control the number of registers: 1) `-maxrregcount` compiler option, and 2) +[`__launch_bounds__()` qualifier method](https://docs.nvidia.com/cuda/cuda-c-programming-guide/index.html#launch-bounds). +The former approach can be used by simply passing the [`-maxrregcount=N` option](https://docs.nvidia.com/cuda/cuda-compiler-driver-nvcc/index.html#options-for-steering-gpu-code-generation-maxrregcount) to the nvcc +compiler where `N` denotes the maximum number of registers *used by all kernels*. The latter method uses the +`__launch_bounds__()` qualifier method after the kernel declaration specification qualifier in order to provide +the necessary information to the compiler through its arguments, `maxThreadsPerBlock` and `minBlocksPerMultiProcessor` as + +~~~ +__global__ void __launch_bounds__(maxThreadsPerBlock, minBlocksPerMultiprocessor) +kernel(...) { + // kernel body implementation +} +~~~ +{: .language-cuda} + +Here, `maxThreadsPerBlock` specifies the maximum number of threads per block with which the `kernel()` is launched. +The `minBlocksPerMultiprocessor` is an optional argument which denotes the desired minimum number of resident thread +blocks per SM. + +The provided information through `__launch_bounds__()` method take precedence over that provided +by the compiler option `-maxrregcount` and in cases where both methods are adopted, the latter is ignored. + +#### 2.2.2. Local Memory + +Kernel variables that cannot fit into registers create a *register pressure* and *spill* into local memory. +Variables types that are eligible to be stored in local memory are: 1) local arrays with reference indices that +cannot be inferred at compilation time, and 2) any variable (such as local arrays or structures) that are too large +to fit in register. + +Note that those data that are spilled into the *local* memory reside in the same physical location as *global* memory. +Therefore, significant performance degradation is expected as the data access/transfer will now be subjected to the +low bandwidth and high latency limitations of the global memory. + +> ## Note: +> The resident data in local memory are cached in each SM's L1 and each device's L2 cache memory spaces for GPUs +> with compute capability 2.0 and higher. +{: .discussion} + +#### 2.2.3. Shared Memory + +Similar to registers, shared memory is a valuable on-chip programmable memory resource with significantly lower latency +and higher bandwidth than those of local/global memory. The `__shared__` qualifier can be used for explicit shared memory +variable declaration. Shared memory can be allocated statically or dynamically and variables can be declared within the +global or kernel's local scope. Let us statically allocate the shared memory for a 2-dimensional array of integers + +~~~ +__shared__ int array[dimX][dimY]; +~~~ +{: .language-cuda} + +where `dimX` and `dimY` are predefined integer variables. If the size of the required shared memory (in this case, +`dimX * dimY * sizeof(int)`) is not known at the compilation time, the memory block for the array of variable size +can be allocated dynamically using the `extern` keyword + +~~~ +extern __shared__ int array[]; +~~~ +{: .language-cuda} + +The postponed specification of the desired allocated memory size for the array should now be defined at the run-time +for each thread as the third argument in the execution configuration (triple angular brackets) + +~~~ +kernel<<< numberOfBlocksInGrid, numberOfThreadsinBlock, dimX * dimY * sizeof(int) >>>(array, ...) +~~~ +{: .language-cuda} + +where the desired size should be expressed in bytes, hence the use of [`sizeof()`](https://en.cppreference.com/w/cpp/language/sizeof). +> ## Note: +> Only 1-dimensional arrays can be declared dynamically in shared memory. +{: .discussion} + +Since shared memory is distributed among thread blocks and is key for intra-block/inter-thread cooperation, a naive usage +of shared memory can limit the number of active warps and affect the performance. Furthermore, the lifetime and scope of +shared memory is limited by those of kernels and when the thread block finishes its execution, the allocated shared memory +for that block is released and becomes available to other thread blocks. + +In order to create an explicit barrier for synchronization of all threads in the same thread block, CUDA runtime introduces the +following functionality + +~~~ +void __syncthreads(); +~~~ +{: .language-cuda} + +which is especially useful for preventing data race [hazards](https://docs.nvidia.com/cuda/cuda-memcheck/index.html#what-are-hazards) +in parallel applications. Data hazards often happen when multiple threads attempt to access a memory address in an arbitrary order +where at least one thread performs a store (or write) operation. Care must be taken with the usage +of [`__syncthreads()`](https://docs.nvidia.com/cuda/cuda-c-programming-guide/index.html#cooperative-groups) since it can negatively +affect the performance by stalling the SM, frequently. + +The on-chip memory space and hardware resources used for both L1 cache and shared memory is statically partitioned by default. +However, this configuration can be dynamically modified at using the CUDA runtime function [`cudaFuncSetCacheConfig()`](https://docs.nvidia.com/ +cuda/cuda-runtime-api/group__CUDART__EXECUTION.html#group__CUDART__EXECUTION_1g6699ca1943ac2655effa0d571b2f4f15) + +~~~ +cudaError_t cudaFuncSetCacheConfig(const void* func, enum cudaFuncCache cacheConfig); +~~~ +{: .language-cuda} + +The first argument, `func`, denotes the device function symbol and [`cudaFuncCache`](https://docs.nvidia.com/cuda/ +cuda-runtime-api/group__CUDART__TYPES.html) is an `enum` type variable that stands for the CUDA cache configurations +and can take the following values + +| Cache Configuration | Value | Meaning | +| :------------------------ | :---: | :----------------------------------------------: | +| cudaFuncCachePreferNone | 0 | No preference (default configuration) | +| cudaFuncCachePreferShared | 1 | Prefer larger shared memory and smaller L1 cache | +| cudaFuncCachePreferL1 | 2 | Prefer larger L1 cache and smaller shared memory | +| cudaFuncCachePreferEqual | 3 | Prefer equal size L1 cache and shared memory | + +> ## Note: +> The `cudaFuncSetCacheConfig()` function does nothing on devices with fixed L1 cache and shared memory sizes. +{: .discussion} + +#### 2.2.4. Constant Memory + +Variables can be declared in constant memory space through using the `__constant__` qualifier. +The constant memory variables must be declared in global scope. Furthermore, the amount of constant memory that +can be declared is limited: 64 kB for all compute capabilities. Moreover, the constant memory is statically allocated +and its content is visible to all threads and kernels in the read-only mode. The best performance from using constant +memory is expected when all threads within a warp read from the same memory address: here the contents of the constant +memory location is broadcasted to all threads in a warp through a single load operation. For example, a numerical constant +can be stored in constant memory and read by threads in warp(s) to scale the components of an array. + +The [`cudaMemcpyToSymbol()`](https://docs.nvidia.com/cuda/cuda-runtime-api/group__CUDART__MEMORY.html +#group__CUDART__MEMORY_1g9bcf02b53644eee2bef9983d807084c7) function can be used to initialize the constant memory from +the host + +~~~ +cudaError_t cudaMemcpyToSymbol(const void* symbol, const void* src, size_t count); +~~~ +{: .language-cuda} + +Here, `count` bytes from the memory address pointed to by the pointer variable `src` is copied to the memory location +pointed to by `symbol` residing in the constant or global memory space. The `cudaMemcpyToSymbol()` is +[synchronous](https://docs.nvidia.com/cuda/cuda-runtime-api/api-sync-behavior.html#api-sync-behavior__memcpy-sync) with +respect to the host in most cases. Constant memory is cached using a dedicated per-SM constant cache space and is best +used in uniform read operations where each thread in a warp accesses the same memory address. + +#### 2.2.5. Texture Memory + +Similar to the constant memory, the texture memory is also cached per-SM through read-only cache which supports hardware +filtering such as performing floating-point interpolation as part of the data load process. Contrary to the constant cache +where the accessed data is usually small and read uniformly by the threads in a warp, the read-only cache is more suitable +for the scattered data access on larger data sets. The texture memory is designed to benefit for the 2-dimensional spatial +locality. Therefore, the best performance can be expected from texture memory when the accessed data is 2-dimensional. +Note that depending on the application, the expected performance from texture memory might be lower than that of the global +memory. + +#### 2.2.6. Global Memory + +Global memory is the most commonly used memory type on GPUs which has the highest latency and size capacity. The contents of +global memory have global scope and can be accessed by all threads and kernels on the device and their lifetime is the same +as that of the running application. Variables in global memory can be declared statically or dynamically. In the +[Basics of the Device Memory Management in CUDA](http://education.molssi.org/gpu_programming_beginner/03-cuda-program-model/ +#1-basics-of-the-device-memory-management-in-cuda), we demonstrated how to adopt [`cudaMalloc()`](https://docs.nvidia.com/ +cuda/cuda-runtime-api/group__CUDART__MEMORY.html#group__CUDART__MEMORY_1g37d37965bfb4803b6d4e59ff26856356), +[`cudaFree()`](https://docs.nvidia.com/cuda/cuda-runtime-api/group__CUDART__MEMORY.html#group__CUDART__MEMORY_1ga042655cbbf3408f01061652a075e094), +[`cudaMemset()`](https://docs.nvidia.com/cuda/cuda-runtime-api/group__CUDART__MEMORY.html#group__CUDART__MEMORY_1gf7338650f7683c51ee26aadc6973c63a) +and [`cudaMemcpy()`](https://docs.nvidia.com/cuda/cuda-runtime-api/group__CUDART__MEMORY.html#group__CUDART__MEMORY_1gc263dbe6574220cc776b45438fc351e8) +CUDA runtime APIs to dynamically allocate, deallocate, initialize and copy global memory, respectively. The static declaration +of a variable in global memory can be performed using the `__device__` qualifier. Note that global memory has the highest +latency in data access among all memory types within CUDA memory model's hierarchy. + +It is important to note that since threads' execution cannot be synchronized between different thread blocks, the possibility of data +hazard caused by simultaneous modifications of the same global memory address by multiple threads from different blocks should be avoided. + +#### 2.2.7. GPU Cache Space + +In addition to the programmable memory spaces within CUDA memory model's hierarchy, GPU devices are often armed with four types of +non-programmable cache memories + +- **L1** +- **L2** +- **Constant (Read-only)** +- **Texture (Read-only)** + +On a CPU, both read and write operations can be cached. However, only the load operation can be cached on a GPU device. +Each SM has its own L1 cache while there is only one L2 cache memory space shared by all SMs on the device. In addition to L1 +and L2 cache memory spaces, constant and texture read-only cache spaces are provided in order to improve specific applications +performed on the GPU devices. + +### 2.3. Host-Device Memory Management + +Since in heterogeneous parallel programs within CUDA framework, the host (CPU and its memory) and the device (GPU and its memory) +domains are distinct, memory management becomes an important task for the programmer. For example, although both host and kernel +variables can be defined in the same code file, the host functions or device kernels cannot generally access the variables from the +other domain. CUDA runtime API functions are often implemented in a way that they make pre-assumptions about the memory space of the +incoming arguments and variables. Therefore, it becomes programmer's responsibility to pass variables from appropriate memory domains +to the runtime API functions or otherwise program ends with a crash or an undefined behavior. + +Before getting into the concept of pinned memory and and why they exist, let us focus on a few key concepts pertinent to the computer +memory management system that we will be frequently dealing with in our tutorial. The first concept in our list is +[**page fault**](https://en.wikipedia.org/wiki/Page_fault), exceptions raised by computer hardwares when a running application attempts +to access a [**memory page**](https://en.wikipedia.org/wiki/Page_(computer_memory)) (*i.e.*, a fixed-length contiguous block of +[**virtual memory**](https://en.wikipedia.org/wiki/Virtual_memory)) that had not been mapped into the +[**virtual address space (VAS)**](https://en.wikipedia.org/wiki/Virtual_address_space) by the [**memory management unit (MMU)**](https:// +en.wikipedia.org/wiki/Memory_management_unit). MMU's main responsibility is to translate all virtual memory addresses to their +physical counterparts. Contrary to what their name might convey, valid page *faults* are in fact necessary tools for any operating system +(OS), armed with virtual memory, in order to make the required page accessible, increase the amount of available memory to each program or +terminate it when an illegal memory access occurs. + +#### 2.3.1. Pinned Memory + +By default, the allocated memory on the host domain is pageable: it is prone to page faults. Since the OS might move the data between different +physical memory locations on the host at any moment, the GPU device cannot securely access the memory addresses corresponding to specific data. +Therefore, in order to transfer data from a pageable host memory location to a memory address on the device, CUDA driver temporarily +allocates [**page-locked** or **pinned** memory](https://docs.nvidia.com/cuda/cuda-c-best-practices-guide/index.html#pinned-memory) on the host +and copies the data to the pinned memory locations. Then, those data can be safely transferred to the device memory destination. + +The host pinned memory can be allocated using the CUDA runtime function, [`cudaMallocHost()`](https://docs.nvidia.com/cuda/cuda-runtime-api/ +group__CUDART__HIGHLEVEL.html#group__CUDART__HIGHLEVEL_1gd5c991beb38e2b8419f50285707ae87e) as + +~~~ +cudaError_t cudaMallocHost(void** ptr, size_t count); +~~~ +{: .language-cuda} + +where `count` bytes of the host memory, pointed to by `ptr`, become page-locked and directly accessible to the device. As such, pinned memory +that is now accessible to the device benefits from higher bandwidths than pageable memory on the host for load/storage operations. + +Page-locked memory can be released via using [`cudaFreeHost()`](https://docs.nvidia.com/cuda/cuda-runtime-api/ +group__CUDART__MEMORY.html#group__CUDART__MEMORY_1g71c078689c17627566b2a91989184969) as + +~~~ +cudaError_t cudaFreeHost(void* ptr); +~~~ +{: .language-cuda} + +Higher bandwidths in pinned memory (compared to that of pageable host memory) makes it more suitable for high-throughput +large-scale data transfer. However, pinning to much host memory takes away from what is otherwise available to the system +for storing data in virtual (host) memory causing significant performance penalties. Furthermore, allocation and deallocation +of pinned memory are more expensive operations than those for pageable host memory. Hence, the expected speedups resulting +from adopting pinned memory also become dependent upon the compute compatibility of the device being employed as well. + +In general, data transfers between host and the device should be minimized in the program. One effective technique to +achieve this goal is to hide the data transfer latency by overlapping it with kernel execution through CUDA streams and concurrency. +We will discuss this topic in details later in this tutorial. + +#### 2.3.2. Zero-copy Memory + +[Zero-copy memory](https://docs.nvidia.com/cuda/cuda-c-programming-guide/index.html#zero-copy-memory) is a non-pageable +(page-locked) memory that is mapped into the device memory address space. Therefore, it breaches the separation of the host +and the device memory domains by being accessible both to host and GPU threads. Zero-copy memory can be allocated via +[`cudaHostAlloc()`](https://docs.nvidia.com/cuda/cuda-runtime-api/group__CUDART__MEMORY.html#group__CUDART__MEMORY_1gb65da58f444e7230d3322b6126bb4902) +CUDA runtime API + +~~~ +cudaError_t cudaHostAlloc(void** pHost, size_t size, unsigned int flags); +~~~ +{: .language-cuda} + +where the third argument, `flags`, can have the following values + +- [**`cudaHostAllocDefault`**](https://docs.nvidia.com/cuda/cuda-runtime-api/group__CUDART__TYPES.html#group__CUDART__TYPES_1g1e00f7734325eb38d75f3ffeae6acac8) +- [**`cudaHostAllocPortable`**](https://docs.nvidia.com/cuda/cuda-runtime-api/group__CUDART__TYPES.html#group__CUDART__TYPES_1gc46ce76be41cf79774331cc8cfceb52b) +- [**`cudaHostAllocMapped`**](https://docs.nvidia.com/cuda/cuda-runtime-api/group__CUDART__TYPES.html#group__CUDART__TYPES_1g01e600c738b962c8f973dda7708f7a70) +- [**`cudaHostAllocWriteCombined`**](https://docs.nvidia.com/cuda/cuda-runtime-api/group__CUDART__TYPES.html#group__CUDART__TYPES_1g3a7db37d02ce0b2350067ab639ef321c) + +The `cudaHostAllocDefault` option causes `cudaHostAlloc()` becomes equivalent to `cudaMallocHost()`. Adopting `cudaHostAllocPortable` option dictates +all CUDA contexts (not just the allocator) to consider the allocated memory as pinned memory. Using the `cudaHostAllocWriteCombined` option, the allocated +memory becomes of write-combined (WC) type which can be transferred more efficiently across the PCI Express bus on some system configurations. The read +operations on WC memory might not be as efficient with most CPUs. Therefore, WC memory becomes a good candidate for buffers written by the CPUs and read by +the device via mapped pinned memory or through host-to-device transfers. With `cudaHostAllocMapped` option, the allocated memory is mapped into the CUDA +address space. A device pointer, `devPtr`, corresponding to the host allocated pinned memory buffer, pointed to by `hostPtr`, may be obtained through [`cudaHostGetDevicePointer()`](https://docs.nvidia.com/cuda/cuda-runtime-api/group__CUDART__MEMORY.html#group__CUDART__MEMORY_1gc00502b44e5f1bdc0b424487ebb08db0) CUDA runtime API as + +~~~ +cudaError_t cudaHostGetDevicePointer(void** devPtr, void* hostPtr, unsigned int flags); +~~~ +{: .language-cuda} + +where according to the CUDA Toolkit [documentation](https://docs.nvidia.com/cuda/cuda-runtime-api/ +group__CUDART__MEMORY.html#group__CUDART__MEMORY_1gc00502b44e5f1bdc0b424487ebb08db0), the `flags` variable in here will be used in future releases and +should be set to zero at the moment. It is important to note that all transactions to the page-locked mapped memory address has to pass through PCI-express bus +connection which because of its low bandwidth cau cause significant latency in data transfer involving frequent load/store operations. Therefore, it should be +used with caution as in many cases, using global memory might simply provide a better alternative for performance reasons. + +The page-locked host memory can be released using [`cudaFreeHost()`](https://docs.nvidia.com/cuda/cuda-runtime-api/ +group__CUDART__MEMORY.html#group__CUDART__MEMORY_1g71c078689c17627566b2a91989184969). + +> ## Note: +> Since the zero-copy memory is shared between the host and the device, access to data on the mapped page-locked memory address should be +> synchronized across both domains or otherwise, undefined behavior due to data hazard can occur. +{: .discussion} + +#### 2.3.3. Unified Virtual Addressing + +Introduced in CUDA 4.0 and supported by devices with compute compatibility 2.0 and later, unified virtual addressing (UVA) provides a Unified Memory +address space for both host and device. For systems without UVA support, pointers to host and device memory locations must be explicitly distinguished +and specified by the programmer. + +![Figure 2](../fig/UVA.png) + +On the other hand, UVA unifies memory space addressing making the corresponding host and device pointers identical and accessible to the entire application. +It might be instructive to explain in more detail how using UVA might be more convenient than working with pinned memory. For example, with zero-copy memory, +one should 1) allocate mapped non-pageable host memory, 2) obtain device pointer to the mapped memory using `cudaHostGetDevicePointer()` CUDA runtime API, +and 3) pass the received pointer in the previous step to the intended kernel. Within UVA framework, the need for creating/managing two separate pointers +to host and device memory addresses or getting device pointers through `cudaHostGetDevicePointer()` CUDA runtime function is lifted. Therefore, the pointers +set by `cudaHostAlloc()` functions can be directly passed to the kernel. + +#### 2.3.4. Unified Memory + +NVIDIA introduced Unified Memory in CUDA 6.0 as a new feature to improve maintainability and readability in CUDA programs and to simplify memory management +in the application. In this framework, memory allocations from Unified Memory pool are automatically managed by the system and become accessible to both host +and device via a single memory address pointer. Based on memory access request from the host or the device, the Unified Memory system automatically migrates +data in the Unified Memory space. As such, the need for explicit management of the memory allocation and data transfer, as discussed in +[Basics of the Device Memory Management in CUDA](http://education.molssi.org/gpu_programming_beginner/03-cuda-program-model/#1-basics-of-the-device-memory-management-in-cuda), is lifted. + +Managed memory can be allocated statically or dynamically. For static declaration of a memory-managed GPU variable, simply add the qualifier `__managed__` +to its declaration as follows + +~~~ +__device__ __managed__ double x; +~~~ +{: .language-cuda} + +Note that this method should only be used within file- and global scopes. Managed memory can also be dynamically allocated using the CUDA runtime function, +[``](https://docs.nvidia.com/cuda/cuda-runtime-api/group__CUDART__MEMORY.html#group__CUDART__MEMORY_1gd228014f19cc0975ebe3e0dd2af6dd1b) as + +~~~ +cudaError_t cudaMallocManaged (void** devPtr, size_t size, unsigned int flags = cudaMemAttachGlobal); +~~~ +{: .language-cuda} + +where `devPtr` is the pointer to the allocated device memory, `size` is the size of the allocated memory bytes and `flags` specifies the default stream +association for the intended managed memory allocation and must be set either to [`cudaMemAttachGlobal`](https://docs.nvidia.com/cuda/cuda-runtime-api/ +group__CUDART__TYPES.html#group__CUDART__TYPES_1g4808e47eba73eb94622ec70a9f9b91ff) (default) or [`cudaMemAttachHost`](https://docs.nvidia.com/cuda/ +cuda-runtime-api/group__CUDART__TYPES.html#group__CUDART__TYPES_1g4f9a428d18fdd89a99441d0dd27131c0). The `cudaMemAttachGlobal` flag makes the allocated +managed memory accessible from any stream or device. On the contrary, the `cudaMemAttachHost` flag restricts the access to the allocated memory only to +those devices that have a non-zero value for the device attribute [`cudaDevAttrConcurrentManagedAccess`](https://docs.nvidia.com/cuda/cuda-runtime-api/ +group__CUDART__TYPES.html#group__CUDART__TYPES_1gg49e2f8c2c0bd6fe264f2fc970912e5cdc88178f29891f2c18fe67361cc80de09). Managed memory should be deallocated +using [`cudaFree()`](https://docs.nvidia.com/cuda/cuda-runtime-api/group__CUDART__MEMORY.html#group__CUDART__MEMORY_1ga042655cbbf3408f01061652a075e094) +CUDA runtime API. + +> ## Note: +> Since it is not possible to call `cudaMallocManaged()` in CUDA 6.0, every managed memory must either be dynamically allocated from the host or +> statically declared within global scope. +{: .discussion} + +We should point out that although Unified Memory requires UVA's support, they should be distinguished as completely different technological frameworks. +UVA offers a Unified Memory address space for every processor installed within the system. However, contrary to the Unified (managed) Memory, UVA does not +automatically migrate data from one memory location to another and across host-device domains. + +Unified Memory is also similar to the zero-copy memory in as they both provide shared access to data for the host and the device. However, the host-based +allocation of the zero-copy memory causes the memory access performance to suffer from having to manually transfer data over PCIe bus with high-latency. +Unified memory system, on the other hand, does not suffer from the aforementioned issues as it can automatically migrate data, on demand, between host +and device in order to enhance the locality and ultimately, performance. + +{% include links.md %} \ No newline at end of file diff --git a/fig/Sources/UVA.pdf b/fig/Sources/UVA.pdf new file mode 100644 index 0000000000000000000000000000000000000000..fd40024ebba55064fb51f5ce4bb30d87f083615e GIT binary patch literal 132703 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Ă*GL>x*JpEX>He!>VrTO&Af+ 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 Z`h9y!!^IZ!^mp9OI}QdxLH~68e*jS}wQm3b literal 0 HcmV?d00001 diff --git a/fig/Sources/memory_hierarchy.pdf b/fig/Sources/memory_hierarchy.pdf new file mode 100644 index 0000000000000000000000000000000000000000..adc0ca1b239e74032856c91266a8d07786d1bda2 GIT binary patch literal 171405 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%0DN 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%0A4Lt5$4APj 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

Of>%Nc8x4TZ$Dui)$MnmSrgpmx^jT^MDC(yi2 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

iZ1b=`pJ7^HdfP-18qRa``{h7-81W|NcY6lye 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

YgOgHo>KwDdqS>SsPQ*>e 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 Q3IhIQWfY|=-Wz@UZ_S7le*gdg literal 0 HcmV?d00001 diff --git a/index.md b/index.md index 3442a22..e857bf6 100644 --- a/index.md +++ b/index.md @@ -3,14 +3,34 @@ layout: lesson root: . # Is the only page that doesn't follow the pattern /:path/index.html permalink: index.html # Is the only page that doesn't follow the pattern /:path/index.html --- -This is a lesson template for the [Molecular Sciences Software Institute]({{ site.molssi_site }})(MolSSI). It is based on a lesson template from [Software Carpentry](https://www.software-carpentry.org) - To see the full MolSSI's education mission statement, please see -[here](http://molssi.org/education/education-mission-statement/). +This tutorial by the [Molecular Sciences Software Institute]({{ site.molssi_site }}) (MolSSI) +adopts a profile-driven approach toward CUDA C/C++ programming at the intermediate level and +blends it with deeper insights from GPU architecture in order to improve the performance of +the heterogeneous parallel applications. + +The MolSSI's full education mission statement can be found [here](http://molssi.org/education/education-mission-statement/). > ## Prerequisites > -> Students should be familiar with opening the Terminal window and creating and navigating files in bash. +> - Previous knowledge of High-performance Computing (HPC) basic concepts are helpful but not required for starting this course. +Nevertheless, we encourage students to take a glance at our [Parallel Programming](https://education.molssi.org/parallel-programming) +tutorial, specifically, Chapters 1, 2 and 5 for a brief overview of some of the fundamental concepts in HPC. +> - Basic familiarity with Bash, C and C++ programming languages is required. +> - [MolSSI's Fundamentals of Heterogeneous Parallel Programming with CUDA C/C++ at the beginner level](http://education.molssi.org/gpu_programming_beginner) +is a pre-requisite for the present tutorial. {: .prereq} +> ## Software/Hardware Specifications {#sh-specifications} +> +> The following NVIDIA CUDA-enabled GPU devices have been used throughout this tutorial: +> - Device 0: [GeForce GTX 1650](https://www.nvidia.com/en-us/geforce/graphics-cards/gtx-1650) +> with Turing architecture (Compute Capability = 7.5) +> - Device 1: [GeForce GT 740M](https://www.techpowerup.com/gpu-specs/geforce-gt-740m.c2299) +> with Kepler architecture (Compute Capability = 3.5) +> +> Linux 18.04 (Bionic Beaver) OS is the target platform for CUDA Toolkit v11.2.0 on the two host +> machines armed with devices 0 and 1. +{: .callout} + {% include links.md %} diff --git a/reference.md b/reference.md index 8c82616..a56a058 100644 --- a/reference.md +++ b/reference.md @@ -2,8 +2,18 @@ layout: reference --- -## Glossary +## Further Readings + +1. [Cheng, J.; Grossman, M.; McKercher, T. **Professional CUDA C Programming** (Wiley, Indianapolis IN, USA, 2014), ISBN: 978-1-118-73932-7](https://www.wiley.com/en-us/Professional+CUDA+C+Programming-p-9781118739327) + +2. [Wilt, N. **The CUDA Handbook: A Comprehensive Guide to GPU Programming** (Addison-Wesley Professional, Crawfordsville IN, USA, 2013), ISBN-13: 978-0321809469](https://www.pearson.com/us/higher-education/program/Wilt-CUDA-Handbook-A-Comprehensive-Guide-to-GPU-Programming-The/PGM260208.html) -FIXME +3. [Sanders, J.; Kandrot, E. **CUDA by Example: An Introduction to General-Purpose GPU Programming** (Addison-Wesley Professional, Boston MA, USA 2011), ISBN: 9780132180160](https://developer.nvidia.com/cuda-example) + +4. [Storti, D.; Yurtoglu, M. **CUDA for Engineers: An Introduction to High-Performance Parallel Computing** (Addison-Wesley Professional, New York NY, USA 2015), ISBN-13: 978-0134177410](https://www.pearson.com/us/higher-education/program/Storti-CUDA-for-Engineers-An-Introduction-to-High-Performance-Parallel-Computing/PGM4858.html) + +5. [Han, J.; Sharma, B. **Learn CUDA Programming** (Packt Publishing Ltd., Birmingham, UK 2019) ISBN: 9781788996242](https://www.packtpub.com/product/learn-cuda-programming/9781788996242) + +## Glossary {% include links.md %} diff --git a/setup.md b/setup.md index 312ddd8..ab1b08c 100644 --- a/setup.md +++ b/setup.md @@ -1,41 +1,176 @@ --- title: Setup --- -## Installing Python through Anaconda -[Python](https://python.org/) is a popular language for scientific computing, and great for general-purpose programming as well. Installing all of its scientific packages individually can be a bit difficult, however, so we recommend the all-in-one installer Anaconda. -Regardless of how you choose to install it, *please make sure you install Python version 3.x (e.g., 3.4 is fine, 2.7 is not)*. Also, please set up your python environment at least a day in advance of the workshop. If you encounter problems with the installation procedure, the instructors will be available 30 minutes before the workshop begins to help you. +> ## Table of Contents +> - [1. Linux](#1-linux) +> - [2. Windows](#2-windows) +> - [3. Mac OS](#3-mac-os) +{: .prereq} -## Windows - [Video Tutorial](https://www.youtube.com/watch?v=xxQ0mzZ8UvA) +In this section, we briefly overview the necessary steps for setting up a CUDA development +environment. At the time of writing this tutorial, **CUDA Toolkit v11.2** is the latest +official release. Therefore, this version will be the center of our focus throughout the tutorial. -1. Open the [Anaconda Windows download page](https://www.anaconda.com/download/#windows). -2. Download the installer. **Be sure you get the Python 3 version.** -3. Double-click the installer icon and follow the setup instructions on screen. You can use MOST of the default options. The only exception is to check the **Make Anaconda the default Python** option. +## 1. Linux -## Mac OS X - [Video Tutorial](https://www.youtube.com/watch?v=TcSAln46u9U) +Depending on the flavor of the Linux OS on the host machine, NVIDIA offers three +options for installation of CUDA Toolkit: *RPM*, *Debian* or *Runfile* packages. +Each of these packages are provided as *Local* or *Network* installers. +Network installers are ideal for users with high-speed internet connection and +low local disk storage capacity. Network installers also allow users to +download only those applications from CUDA Toolkit that they need. Local installers, +on the other hand, offer a stand-alone large-size installer file that should be downloaded +to the host machine once. Future installations using this installer file will not require +any internet connection. Runfiles are Local installers but depending on the type of +Linux OS on the host machine, RPM and Debian packages can be Local or Network installers. -1. Open the [Anaconda MacOS download page](https://www.anaconda.com/download/#macos). -2. Download the installer. **Be sure you get the Python 3 version.** -3. Double click the installer icon and follow the setup instructions. You can use all of the default options. +Managing the dependencies and prerequisites in various operating systems can be +very different depending on the chosen installation method. In comparison with +Debian and RPM packages, Runfiles offer a cleaner and more independent method +with more control over the installation process. Meanwhile, the installed CUDA +Toolkit and its dependent software will not automatically update. On the other hand, +Debian and RPM packages provide a native and straightforward way to install the CUDA +Toolkit. However, resolving dependencies, conflicts and broken packages will often +be an inseparable part of the process. Take a look at CUDA Toolkit +[documentation](https://docs.nvidia.com/cuda/cuda-quick-start-guide/index.html#linux) +for further information and details on installers. -## Obtain lesson materials -1. Put link to download materials here. -2. Create a folder called `cms-workshop` on your Desktop. -3. Move the downloaded materials to the new folder. -4. Unzip the file. +Before spending time on the installation of the CUDA Toolkit on your Linux machine, +consider the following set of actions. -## Open the Terminal Window -- Windows: Click Windows Key + R, type cmd, press Enter. -- MacOS: The Terminal application can be found in Applications -> Utilities -> Terminal. +> ## Pre-installation Steps {#pre-installation-steps} +> - Make sure your system has a CUDA-capable graphics processing unit (GPU) device. +> There are multiple ways to do this task: +> +> ♠ For a minimalist, a simple bash command will do the trick +> +> ~~~ +> $ ls -l /dev/nv* +> ~~~ +> {: .language-bash} +> +> if the system is armed with a GPU accelerator device, a typical output of the +> command above would be: +> +> ~~~ +> crw-rw-rw- 1 root root 195, 0 Jan 10 09:43 /dev/nvidia0 <-- This line corresponds to your active GPU accelerator device +> crw-rw-rw- 1 root root 195, 255 Jan 10 09:43 /dev/nvidiactl +> crw-rw-rw- 1 root root 195, 254 Jan 10 09:43 /dev/nvidia-modeset +> crw-rw-rw- 1 root root 236, 0 Jan 10 09:43 /dev/nvidia-uvm +> crw-rw-rw- 1 root root 236, 1 Jan 10 09:43 /dev/nvidia-uvm-tools +> crw------- 1 root root 243, 0 Jan 10 09:43 /dev/nvme0 +> brw-rw---- 1 root disk 259, 0 Jan 10 09:43 /dev/nvme0n1 +> brw-rw---- 1 root disk 259, 1 Jan 10 09:43 /dev/nvme0n1p1 +> brw-rw---- 1 root disk 259, 2 Jan 10 09:43 /dev/nvme0n1p2 +> brw-rw---- 1 root disk 259, 3 Jan 10 09:43 /dev/nvme0n1p3 +> brw-rw---- 1 root disk 259, 4 Jan 10 09:43 /dev/nvme0n1p4 +> ~~~ +> {: .output} +> +> ♥ Helpful information about active hardware on the host machine (including graphics card) can be obtained from +> **About This Computer** panel which can be accessed from the top-right gear icon at the top +> corner of the Ubuntu (Unity) desktop screen or through **Settings/Details** icon that can be looked up from the search bar. +> +> ♣ NVIDIA website provides [tables](https://developer.nvidia.com/cuda-gpus) of CUDA-enabled GPUs along side +> their [***compute capabilities***](https://docs.nvidia.com/cuda/cuda-c-programming-guide/index.html#compute-capability). +> Compute capability (or *streaming multiprocessor version*) consisting of a version number (M.N) where M and N stand for +> major and minor digits, respectively, specifies features that the GPU hardware can support. GPU devices with the same major +> number (M) belong to the same core architecture: 8 for devices based on the *Ampere* architecture, 7 for devices based +> on the *Volta* architecture, 6 for devices based on the *Pascal* architecture, 5 for devices based on the *Maxwell* +> architecture, 3 for devices based on the *Kepler* architecture, 2 for devices based on the *Fermi* architecture, and 1 +> for devices based on the *Tesla* architecture. Older CUDA-enabled GPUs (legacy GPUs) are listed +> [here](https://developer.nvidia.com/cuda-legacy-gpus). +> +> ♦ The *NVIDIA System Management Interface* (`nvidia-smi`) is a command-line tool which is derived +> from *NVIDIA Management Library (NVML)* and designed to provide control and monitoring +> capabilities over NVIDIA CUDA-enabled GPU devices. `nvidia-smi` ships with NVIDIA GPU display drivers +> on Linux and some versions of Microsoft Windows. For further details, see +> [here](https://developer.nvidia.com/nvidia-system-management-interface). In order to run `nvidia-smi`, +> simply call it through a terminal: +> +> ~~~ +> $ nvidia-smi +> ~~~ +> {: .language-bash} +> +> A typical output would look like: +> +> ~~~ +> +-----------------------------------------------------------------------------+ +> | NVIDIA-SMI 455.38 Driver Version: 455.38 CUDA Version: 11.2 | +> |-------------------------------+----------------------+----------------------+ +> | GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC | +> | Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. | +> | | | MIG M. | +> |===============================+======================+======================| +> | 0 GeForce GTX 1650 Off | 00000000:01:00.0 Off | N/A | +> | N/A 42C P8 2W / N/A | 438MiB / 3911MiB | 10% Default | +> | | | N/A | +> +-------------------------------+----------------------+----------------------+ +> ... +> ~~~ +> {: .output} +> +> where unnecessary information from the output are replaced with ellipses. +> The result shows the driver version (455.38), CUDA version (11.2), and the +> CUDA-enabled GPU device name (GeForce GTX 1650). Since multiple GPUs might be +> available on each machine, applications such as `nvidia-smi` often adopt +> integer indices, starting from zero, for referencing the GPU devices. +> +> - Because the present tutorial is based on the CUDA C/C++ programming language extensions, +> check to see if the version of Linux on the host machine is supported by CUDA. +> To do so, take a +> glance at [this](https://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html#system-requirements) page. +> In order to verify the availability of GNU compilers (gcc and g++) on the system, try +> +> ~~~ +> $ --version +> ~~~ +> {: .language-bash} +> +> where `` placeholder should be replaced with either `gcc` or `g++`. +> +> - Download the NVIDIA CUDA Toolkit from [here](https://developer.nvidia.com/cuda-downloads). +> Once the CUDA Toolkit installer is downloaded, follow the instructions +> [here](https://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html#runfile) based on the type of +> your Linux OS platform. +{: .prereq} -## Start a Jupyter notebook -In the Terminal window, type -``` -$ jupyter notebook -``` -It may take a few seconds to load the page, especially if it is the first time you have ever used the jupyter notebook, so don't panic if nothing loads for a few seconds. Then a new window should open in your default internet browser. Use the file navigation window to navigate to the `cms-workshop` folder. In the upper right hand corner, click New, then choose Python 3 from the dropdown list. You're ready to go! +> ## **Known Issues**: +> +> It is a very common issue that a previously installed version of CUDA conflicts with a +> newer version that is intended to be installed. In order to resolve the conflict, check the compatibility +> [matrices](https://docs.nvidia.com/cuda/cuda-installation-guide-linux/#handle-uninstallation) +> and follow the instructions provided thereafter. +{: .callout} +## 2. Windows +Basic instructions on using Local or Network installers can be found on CUDA Toolkit's +[documentation](https://docs.nvidia.com/cuda/cuda-quick-start-guide/index.html). +NVIDIA CUDA Toolkit supports specific version combinations of Microsoft Windows OSs, +compilers and Microsoft Visual Studio environments. For further details, see +[here](https://docs.nvidia.com/cuda/cuda-installation-guide-microsoft-windows/#system-requirements). +> ## WSL Users +> +> After following directions in the [Pre-installation Steps](#pre-installation-steps) section, +> the *Windows Subsystem for Linux (WSL)* users can refer to CUDA Toolkit +> [documentation](https://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html#wsl-installation) +> for setting up CUDA Toolkit and following the instructions. +{: .prereq} + +## 3. Mac OS + +> ## **Note**: +> +> CUDA Toolkit v10.2.x is the last release that supports Mac OS as a target platform +> for heterogeneous parallel code development with CUDA. However, NVIDIA still provides +> support for launching CUDA debugger and profiler application sessions for Mac OS as a host platform. +> +> Since the present tutorial is based on the latest +> version (v11.2.0), the Mac OS will not be the subject of our further consideration. +{: .discussion} {% include links.md %}