Page 172 - 《软件学报》2024年第6期
P. 172

2748                                                       软件学报  2024  年第  35  卷第  6  期


                 其生成的代码在一系列基准测试中具有比现有编译器更好的性能.
                    基于该编译系统, 用户能够以串行方式来全局声明式地编程群体智能应用程序, 隐式地规范同步和通信,
                 因此节点间的数据移动、并行任务管理等复杂细节完全留给编译系统, 这有效降低了群体智能应用程序编程
                 和调试的难度, 提高了群体智能系统的开发效率. 此外, 本文这种将群体智能应用程序编译为标准化中间表示
                 进而屏蔽硬件平台异构性的思想方法, 也具备一定的普适性, 对其他领域特定语言的编译开发具有借鉴意义.
                 在未来, 将在并行循环优化、常量折叠等方面探索该编译系统的代码优化方法, 提高该编译系统生成的目标代
                 码的执行效率.


                 References:
                  [1]  Hassanien AE, Emary E. Swarm Intelligence: Principles, Advances, and Applications. Boca Raton: CRC Press, 2018. [doi: 10.1201/
                     9781315222455]
                  [2]  Xing T, Yan H, Sun KL, Wang YF, Wang XT, Zhao QC. Honeycomb: An open-source distributed system for smart buildings. Patterns,
                     2022, 3(11): 100605. [doi: 10.1016/j.patter.2022.100605]
                  [3]  Zedadra O, Guerrieri A, Jouandeau N, Spezzano G, Seridi H, Fortino G. Swarm intelligence-based algorithms within IoT-based systems:
                     Intel C++ Compiler. 2024. https://software.intel.com/en-us/c-compilers/
                     A review. Journal of Parallel and Distributed Computing, 2018, 122: 173–187. [doi: 10.1016/j.jpdc.2018.08.007]
                  [4]  Youssefi KAR, Rouhani M, Mashhadi HR, Elmenreich W. A swarm intelligence-based robotic search algorithm integrated with game
                     theory. Applied Soft Computing, 2022, 122: 108873. [doi: 10.1016/j.asoc.2022.108873]
                  [5]  Schranz M, Di Caro GA, Schmickl T, Elmenreich W, Arvin F, Şekercioğlu A, Sende M. Swarm intelligence and cyber-physical systems:
                     Concepts, challenges and future trends. Swarm and Evolutionary Computation, 2021, 60: 100762. [doi: 10.1016/j.swevo.2020.100762]
                  [6]  Chen WJ, Yang QL, Jiang ZY, Xing JC, Zhao S, Zhou QZ, Han DS, Feng BW. SwarmL: A language for programming fully distributed
                     intelligent building systems. Buildings, 2023, 13(2): 499. [doi: 10.3390/buildings13020499]
                  [7]  Pinciroli C, Beltrame G. Buzz: A programming language for robot swarms. IEEE Software, 2016, 33(4): 97–100. [doi: 10.1109/MS.2016.
                     95]
                  [8]  Modi R. Solidity Programming Essentials: A Beginner’s Guide to Build Smart Contracts for Ethereum and Blockchain. Birmingham:
                     Packt Publishing, 2018.
                  [9]  Midkiff SP. Automatic Parallelization: An Overview of Fundamental Compiler Techniques. Cham: Springer, 2012. [doi: 10.1007/978-3-
                     031-01736-0]
                 [10]  Arabnejad H, Bispo J, Cardoso JMP, Barbosa JG. Source-to-source compilation targeting OpenMP-based automatic parallelization of C
                     applications. The Journal of Supercomputing, 2020, 76(9): 6753–6785. [doi: 10.1007/s11227-019-03109-9]
                 [11]  Jiang S, Cao JN, Liu Y, Chen JL, Liu XF. Programming large-scale multi-robot system with timing constraints. In: Proc. of the 25th Int’l
                     Conf. on Computer Communication and Networks. Waikoloa: IEEE, 2016. 1–9. [doi: 10.1109/ICCCN.2016.7568563]
                 [12]  Ashley-Rollman MP, Lee P, Goldstein SC, Pillai P, Campbell JD. A language for large ensembles of independently executing nodes. In:
                     Proc. of the 25th Int’l Conf. on Logic Programming. Pasadena: Springer, 2009. 265–280. [doi: 10.1007/978-3-642-02846-5_24]
                 [13]  Prema S, Nasre R, Jehadeesan R, Panigrahi BK. A study on popular auto-parallelization frameworks. Concurrency and Computation:
                     Practice and Experience, 2019, 31(17): e5168. [doi: 10.1002/cpe.5168]
                 [14]  Ma CY, Lv BX, Ye XJ, Zhang Y. Automatic parallelization framework for complex nested loops based on LLVM pass. Ruan Jian Xue
                     Bao/Journal of Software, 2023, 34(7): 3022–3042 (in Chinese with English abstract). http://www.jos.org.cn/1000-9825/6858.htm [doi: 10.
                     13328/j.cnki.jos.006858]
                 [15]
                 [16]  Legacy PGI Support. 2024. http://www.pgroup.com
                 [17]  Bhosale A, Barakhshan P, Rosas MR, Eigenmann R. Automatic and interactive program parallelization using the Cetus source to source
                     compiler infrastructure v2.0. Electronics, 2022, 11(5): 809. [doi: 10.3390/electronics11050809]
                 [18]  Lidman  J,  Quinlan  DJ,  Liao  C,  McKee  SA.  Rose:  Fttransform-a  source-to-source  translation  framework  for  exascale  fault-tolerance
                     research. In: Proc. of the 2012 IEEE/IFIP Int’l Conf. on Dependable Systems and Networks Workshops. IEEE, 2012. 1–6. [doi: 10.1109/
                     DSNW.2012.6264672]
                 [19]  Palkowski M, Bielecki W. TRACO: Source-to-source parallelizing compiler. Computing and Informatics, 2016, 35(6): 1277–1306.
                 [20]  Bondhugula U, Hartono A, Ramanujam J, Sadayappan P. A practical automatic polyhedral parallelizer and locality optimizer. In: Proc. of
                     the 29th ACM SIGPLAN Conf. on Programming Language Design and Implementation. Tucson: ACM, 2008. 101–113. [doi: 10.1145/
   167   168   169   170   171   172   173   174   175   176   177