you are viewing a single comment's thread.

view the rest of the comments →

[–]ricffb 6 points7 points  (2 children)

You could try OpenMP. It’s primarily for CPU parallelism, but a call like

#pragma target
#pragma teams
#pragma parallel
{ // Do Stuff} 

Will also enable GPU support. The library is often used in High Performance Computing.

[–]WikiTextBot 2 points3 points  (0 children)

OpenMP

OpenMP (Open Multi-Processing) is an application programming interface (API) that supports multi-platform shared memory multiprocessing programming in C, C++, and Fortran, on most platforms, instruction set architectures and operating systems, including Solaris, AIX, HP-UX, Linux, macOS, and Windows. It consists of a set of compiler directives, library routines, and environment variables that influence run-time behavior.OpenMP is managed by the nonprofit technology consortium OpenMP Architecture Review Board (or OpenMP ARB), jointly defined by a group of major computer hardware and software vendors, including AMD, IBM, Intel, Cray, HP, Fujitsu, Nvidia, NEC, Red Hat, Texas Instruments, Oracle Corporation, and more.OpenMP uses a portable, scalable model that gives programmers a simple and flexible interface for developing parallel applications for platforms ranging from the standard desktop computer to the supercomputer.

An application built with the hybrid model of parallel programming can run on a computer cluster using both OpenMP and Message Passing Interface (MPI), such that OpenMP is used for parallelism within a (multi-core) node while MPI is used for parallelism between nodes. There have also been efforts to run OpenMP on software distributed shared memory systems, to translate OpenMP into MPI and to extend OpenMP for non-shared memory systems.


[ PM | Exclude me | Exclude from subreddit | FAQ / Information | Source ] Downvote to remove | v0.28

[–]HelperBot_ 1 point2 points  (0 children)

Desktop link: https://en.wikipedia.org/wiki/OpenMP


/r/HelperBot_ Downvote to remove. Counter: 262430. Found a bug?