5. The method of claim 1 , wherein: said dynamically selecting a hardware-specific variant is based, at least in part, on one or more annotations associated with the variant.
1. A computer-implemented method comprising: bundling two or more hardware-specific variants of a run-time function into a generic function that corresponds to a parallel programming keyword of a parallel programming language; generating one or more meta-wrappers for the generic function based on an annotation supplied for each of the two or more hardware-specific variants of the run-time function; compiling source code of a user program that comprises (i) statements from a high-level programming language and (ii) the parallel programming keyword of the parallel programming language to generate a compiled binary of the user program, the compiled binary comprises (i) compiled code that corresponds to the statements from the high-level programming language and (ii) a run-time function call to the generic function embedded in the compiled binary as a function of the one or more meta wrappers; during runtime execution of the compiled binary, (i) executing the run-time function call to the generic function and (ii) dynamically selecting a hardware-specific variant of the run-time function for a selected sub-task associated with the parallel programming keyword; and dispatching the selected hardware-specific variant for execution on a hardware processing element associated with the selected hardware-specific variant.