Song You, Yang Siyu, Lei Jinzhi
IEEE/ACM Trans Comput Biol Bioinform. 2019 May-Jun;16(3):994-1006. doi: 10.1109/TCBB.2018.2814570.
In computational biology, the hierarchy of biological systems requires the development of flexible and powerful computational tools. Graphics processing unit (GPU) architecture has been a suitable device for parallel computing in simulating multi-cellular systems. However, in modeling complex biological systems, scientists often face two tasks, mathematical formulation and skillful programming. In particular, specific programming skills are needed for GPU programming. Therefore, the development of an easy-to-use computational architecture, which utilizes GPU for parallel computing and provides intuitive interfaces for simple implementation, is needed so that general scientists can perform GPU simulations without knowing much about the GPU architecture. Here, we introduce ParaCells, a cell-centered GPU simulation architecture for NVIDIA compute unified device architecture (CUDA). ParaCells was designed as a versatile architecture that connects the user logic (in C++) with NVIDIA CUDA runtime and is specific to the modeling of multi-cellular systems. An advantage of ParaCells is its object-oriented model declaration, which allows it to be widely applied to many biological systems through the combination of basic biological concepts. We test ParaCells with two applications. Both applications are significantly faster when compared with sequential as well as parallel OpenMP and OpenACC implementations. Moreover, the simulation programs based on ParaCells are cleaner and more readable than other versions.
在计算生物学中,生物系统的层级结构需要开发灵活且强大的计算工具。图形处理单元(GPU)架构一直是模拟多细胞系统中并行计算的合适设备。然而,在对复杂生物系统进行建模时,科学家们常常面临两项任务,即数学公式化和熟练编程。特别是,GPU编程需要特定的编程技能。因此,需要开发一种易于使用的计算架构,该架构利用GPU进行并行计算,并提供直观的接口以便于简单实现,这样普通科学家在不太了解GPU架构的情况下也能进行GPU模拟。在此,我们介绍ParaCells,一种用于NVIDIA计算统一设备架构(CUDA)的以细胞为中心的GPU模拟架构。ParaCells被设计为一种通用架构,它将用户逻辑(用C++编写)与NVIDIA CUDA运行时连接起来,并且专门用于多细胞系统的建模。ParaCells的一个优点是其面向对象的模型声明,这使得它能够通过基本生物学概念的组合广泛应用于许多生物系统。我们用两个应用对ParaCells进行了测试。与顺序以及并行的OpenMP和OpenACC实现相比,这两个应用的速度都显著更快。此外,基于ParaCells的模拟程序比其他版本更简洁、更易读。