{"title":"一个重要波模型在并行架构上的实现","authors":"T. Campbell, J. Cazes, E. Rogers","doi":"10.1109/OCEANS.2002.1191860","DOIUrl":null,"url":null,"abstract":"SWAN (Simulating WAves Nearshore), developed at the Delft University of Technology, is an important third generation wave model used to simulate short-crested wind-generated waves in shallow water areas such as coastal regions and inland waters. The model solves a four-dimensional (2 spatial dimensions, wave direction, and wave frequency) spectral action balance equation using a semi-implicit upwind scheme. Relative to other less advanced wave models, SWAN is more computationally demanding, and a parallel version is necessary in order to decrease turn-around time, improve the model resolution for large coastal regions, and migrate SWAN into Navy operational use. In this paper we present a new parallel implementation of SWAN using a pipelined parallel approach which does not alter the order of operations in the sequential numerical algorithm. The implementation uses OpenMP compiler directives and runs on shared-memory multiprocessor computers. This approach represents a non-traditional, i.e., not loop-level, way of using OpenMP. Performance measurements show that turn-around time for high-resolution model applications can be significantly reduced with the parallel implementation. The parallel implementation has been verified and model output matches \"bit-for-bit\" with the original sequential code for both stationary and non-stationary cases. The new parallel code has already been incorporated into the next official release of SWAN and is beginning transition into operational use.","PeriodicalId":431594,"journal":{"name":"OCEANS '02 MTS/IEEE","volume":"121 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2002-12-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"5","resultStr":"{\"title\":\"Implementation of an important wave model on parallel architectures\",\"authors\":\"T. Campbell, J. Cazes, E. Rogers\",\"doi\":\"10.1109/OCEANS.2002.1191860\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"SWAN (Simulating WAves Nearshore), developed at the Delft University of Technology, is an important third generation wave model used to simulate short-crested wind-generated waves in shallow water areas such as coastal regions and inland waters. The model solves a four-dimensional (2 spatial dimensions, wave direction, and wave frequency) spectral action balance equation using a semi-implicit upwind scheme. Relative to other less advanced wave models, SWAN is more computationally demanding, and a parallel version is necessary in order to decrease turn-around time, improve the model resolution for large coastal regions, and migrate SWAN into Navy operational use. In this paper we present a new parallel implementation of SWAN using a pipelined parallel approach which does not alter the order of operations in the sequential numerical algorithm. The implementation uses OpenMP compiler directives and runs on shared-memory multiprocessor computers. This approach represents a non-traditional, i.e., not loop-level, way of using OpenMP. Performance measurements show that turn-around time for high-resolution model applications can be significantly reduced with the parallel implementation. The parallel implementation has been verified and model output matches \\\"bit-for-bit\\\" with the original sequential code for both stationary and non-stationary cases. The new parallel code has already been incorporated into the next official release of SWAN and is beginning transition into operational use.\",\"PeriodicalId\":431594,\"journal\":{\"name\":\"OCEANS '02 MTS/IEEE\",\"volume\":\"121 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2002-12-01\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"5\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"OCEANS '02 MTS/IEEE\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/OCEANS.2002.1191860\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"OCEANS '02 MTS/IEEE","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/OCEANS.2002.1191860","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
Implementation of an important wave model on parallel architectures
SWAN (Simulating WAves Nearshore), developed at the Delft University of Technology, is an important third generation wave model used to simulate short-crested wind-generated waves in shallow water areas such as coastal regions and inland waters. The model solves a four-dimensional (2 spatial dimensions, wave direction, and wave frequency) spectral action balance equation using a semi-implicit upwind scheme. Relative to other less advanced wave models, SWAN is more computationally demanding, and a parallel version is necessary in order to decrease turn-around time, improve the model resolution for large coastal regions, and migrate SWAN into Navy operational use. In this paper we present a new parallel implementation of SWAN using a pipelined parallel approach which does not alter the order of operations in the sequential numerical algorithm. The implementation uses OpenMP compiler directives and runs on shared-memory multiprocessor computers. This approach represents a non-traditional, i.e., not loop-level, way of using OpenMP. Performance measurements show that turn-around time for high-resolution model applications can be significantly reduced with the parallel implementation. The parallel implementation has been verified and model output matches "bit-for-bit" with the original sequential code for both stationary and non-stationary cases. The new parallel code has already been incorporated into the next official release of SWAN and is beginning transition into operational use.