{"title":"使用OpenMP的并行编程","authors":"Subrata Ray","doi":"10.1201/9780429326097-21","DOIUrl":null,"url":null,"abstract":"• OpenMP stands for “Open Multi-Processing” • OpenMP is a multi-vendor (see next page) standard to perform shared-memory multithreading • OpenMP uses the fork-join model • OpenMP is both directiveand library-based • OpenMP threads share a single executable, global memory, and heap (malloc, new) • Each OpenMP thread has its own stack (function arguments, function return address, local variables) • Using OpenMP requires no dramatic code changes • OpenMP probably gives you the biggest multithread benefit per amount of work you have to put in to using it","PeriodicalId":383412,"journal":{"name":"Fortran 2018 with Parallel Programming","volume":"265 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2019-08-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"Parallel Programming Using OpenMP\",\"authors\":\"Subrata Ray\",\"doi\":\"10.1201/9780429326097-21\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"• OpenMP stands for “Open Multi-Processing” • OpenMP is a multi-vendor (see next page) standard to perform shared-memory multithreading • OpenMP uses the fork-join model • OpenMP is both directiveand library-based • OpenMP threads share a single executable, global memory, and heap (malloc, new) • Each OpenMP thread has its own stack (function arguments, function return address, local variables) • Using OpenMP requires no dramatic code changes • OpenMP probably gives you the biggest multithread benefit per amount of work you have to put in to using it\",\"PeriodicalId\":383412,\"journal\":{\"name\":\"Fortran 2018 with Parallel Programming\",\"volume\":\"265 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2019-08-22\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Fortran 2018 with Parallel Programming\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1201/9780429326097-21\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"Fortran 2018 with Parallel Programming","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1201/9780429326097-21","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
• OpenMP stands for “Open Multi-Processing” • OpenMP is a multi-vendor (see next page) standard to perform shared-memory multithreading • OpenMP uses the fork-join model • OpenMP is both directiveand library-based • OpenMP threads share a single executable, global memory, and heap (malloc, new) • Each OpenMP thread has its own stack (function arguments, function return address, local variables) • Using OpenMP requires no dramatic code changes • OpenMP probably gives you the biggest multithread benefit per amount of work you have to put in to using it