CUDA Tutorial 131 - Create and Consume CUDA DLL, C++20 Constrained auto Declarations
Описание
We will learn how to create and consume #CUDA #DLL, how to use C++20 constrained declarations. We will also learn how to use nested requirements.
Constrained Declarations
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/p1141r2.html
Improved OpenMP Support for C++ in Visual Studio
https://devblogs.microsoft.com/cppblog/improved-openmp-support-for-cpp-in-visual-studio/
OpenCL 1.2 Reference Pages
https://www.khronos.org/registry/OpenCL/sdk/1.2/docs/man/xhtml/
OpenCL 2.2 Reference Pages
https://www.khronos.org/registry/OpenCL/sdk/2.2/docs/man/html/
The OpenCL™ Specification
https://www.khronos.org/registry/OpenCL/specs/2.2/html/OpenCL_API.html#kernel-workgroup-info-table
OpenCL Programming Guide
Download PDF
- http://asu-cs.donntu.org/sites/default/files/images/doc/opencl.programming.guide.pdf
Download Sample Code
- https://github.com/bgaster/opencl-book-samples
OpenCL in Action
Download PDF
- http://analog.nik.uni-obuda.hu/ParhuzamosProgramozasuHardver/02_GPGPU-Irodalom/03_CUDA-Irodalom_LovasIstvan/OpenCl/Books/%5BMatthew_Scarpino%5D_OpenCL_in_Action_How_to_Accele(Bookos.org).pdf
Download Sample Code
- https://github.com/jeremyong/opencl_in_action
Command-Line Commands
icx -std:c++latest clapp.cpp opencl.lib -o i.exe
clang++ -std=c++20 clapp.cpp -lopencl -ltbb -o c.exe
g++ -std=c++20 clapp.cpp -lopencl -ltbb -o g.exe
cl /std:c++latest /EHsc clapp.cpp opencl.lib /Fe: m.exe
dpcpp -Qstd=c++20 /EHsc -fno-sycl clapp.cpp opencl.lib -o d.exe
Prerequisites:
27 - Type List and Compile-Time Loop 4/N - unique_type_t, prepend_type_t, is_type_in_list_v
https://www.youtube.com/watch?v=TcoZXmAxL_w&list=PL1_C6uWTeBDE6KepUEI9XeOpLc4hgDVOd&index=27
C++20 Concepts #00: How to Install Visual Studio 2019 version 16.3.0 Preview 3
https://www.youtube.com/watch?v=FLbUfkIDTbE&list=PL1_C6uWTeBDFuuwSvNm4VI-1eWyMxsB7b&index=1
018 - The C++ 20 Concepts Tutorial 1, What are Concepts in C++?
https://www.youtube.com/watch?v=_m8lXscN2zs&list=PL1_C6uWTeBDH6i4Rr3E2ZYLUq6_Rdq3Dr&index=19
099 - (SETUP) Intel® oneAPI DPC++ for SYCL / OpenCL / Intel TBB
https://www.youtube.com/watch?v=iZOkM6mslMY&list=PL1_C6uWTeBDF7kjfRMCmHIq1FncthhBpQ&index=100
100 - (SETUP) OpenCL for clang++, GNU g++ On Windows, OpenCL C++ Bindings (cl2.hpp)
https://www.youtube.com/watch?v=4V1BcWb0k28&list=PL1_C6uWTeBDF7kjfRMCmHIq1FncthhBpQ&index=101
SYCL 123 - (SETUP) Intel System Studio and Math Kernel Library - MKL
https://www.youtube.com/watch?v=5EN4LSVreTQ&list=PL1_C6uWTeBDF7kjfRMCmHIq1FncthhBpQ&index=124
SYCL 124 - (SETUP) Cross-Compiler Binary Interoperability, MSVC, oneAPI DPC++, LLVM\clang++, GNU g++
https://www.youtube.com/watch?v=cLTM_ZtBYFw&list=PL1_C6uWTeBDF7kjfRMCmHIq1FncthhBpQ&index=125
SYCL 125 - (SETUP) Free OpenCL Books and Sample Code - How to Build OpenCL on Windows
https://www.youtube.com/watch?v=tI1FklR3Hjs&list=PL1_C6uWTeBDF7kjfRMCmHIq1FncthhBpQ&index=126
CUDA Tutorial 126 - (SETUP) Hello CUDA on Command Prompt on Windows (Hands-on Tutorial)
https://www.youtube.com/watch?v=I4jfkFfJVmE&list=PL1_C6uWTeBDF7kjfRMCmHIq1FncthhBpQ&index=127
OPENCL 127 - Compare OpenCL, SYCL, CUDA - Query OpenCL Platform - Mistake with std::string
https://www.youtube.com/watch?v=MOzEIYNZ5yg&list=PL1_C6uWTeBDF7kjfRMCmHIq1FncthhBpQ&index=128
OPENCL 128 - Query OpenCL Device - Advanced Function Overloading with Tagged Type Dispatch
https://www.youtube.com/watch?v=X5iR_dUq9bE&list=PL1_C6uWTeBDF7kjfRMCmHIq1FncthhBpQ&index=129
OPENCL 129 - Select OpenCL Device, C++20 Concepts, Tokenize std::string
https://www.youtube.com/watch?v=ylrltzZ2Hs8&list=PL1_C6uWTeBDF7kjfRMCmHIq1FncthhBpQ&index=130
OPENCL 130 - OpenCL Context, Resource Leak of Reference Counted Objects, RAII, Prototype Parameter
https://www.youtube.com/watch?v=OK9DTsEGRh0&list=PL1_C6uWTeBDF7kjfRMCmHIq1FncthhBpQ&index=131
Download Source Code:
Episode CUDA Tutorial 131 - Create and Consume CUDA DLL, C++20 Constrained auto Declarations
https://sourcecode.talkplayfun.com/electromagnetics/131-CUDA-DLL.zip
Episode OPENCL 130 - OpenCL Context, Resource Leak of Reference Counted Objects, RAII, Prototype Parameter
https://sourcecode.talkplayfun.com/electromagnetics/130-CreateContext.zip
Episode OPENCL 129 - Select OpenCL Device, C++20 Concepts, Tokenize std::string
https://sourcecode.talkplayfun.com/electromagnetics/129-SelectDevice.zip
Episode OPENCL 128 - Query OpenCL Device 1 - Advanced Function Overloading with Tagged Type Dispatch
https://sourcecode.talkplayfun.com/electromagnetics/128-DeviceInformation.zip
Episode OPENCL 127 - Compare OpenCL, SYCL, CUDA - Query OpenCL Platform - Mistake with std::string
https://sourcecode.talkplayfun.com/electromagnetics/127-OpenCLPlatform.zip
Episode SYCL 126 - (SETUP) Hello CUDA on Command Prompt on Windows
https://sourcecode.talkplayfun.com/electromagnetics/126-HelloCUDA.zip
Рекомендуемые видео



















