作者: Kenjiro Taura , Kunio Tabata , Akinori Yonezawa
关键词: Multithreading 、 Software portability 、 Parallel computing 、 Machine code 、 Cilk 、 Programming language 、 Computer science 、 Correctness 、 Asynchronous communication 、 Compiler 、 Preprocessor
摘要: An implementation scheme of fine-grain multithreading that needs no changes to current calling standards for sequential languages and modest extensions compilers is described. Like previous similar systems, it performs an asynchronous call as if were ordinary procedure call, detaches the callee from caller when suspends or either them migrates another processor. Unlike connects arbitrary frames generated by off-the-shelf obeying standards. As a consequence, requires neither frontend preprocessor nor native code generator has builtin notion parallelism. The system practically works with unmodified GNU C compiler (GCC). Desirable guaranteeing portability correctness are clarified claimed modest. Experiments indicate performance not sacrificed practical applications both parallel comparable Cilk[8], whose fairly sophisticated C. These results show efficient calls (a.k.a. future calls) can be integrated into standard very small impact on engineering.