Skip to main content
QUICK REVIEW

[논문 리뷰] BioDynaMo: an agent-based simulation platform for scalable computational biology research

Lukas Breitwieser, Ahmad Hesam|arXiv (Cornell University)|2020. 06. 08.
Scientific Computing and Data Management참고 문헌 38인용 수 5
한 줄 요약

BioDynaMo는 고성능이며 오픈소스인 에이전트 기반 시뮬레이션 플랫폼으로, 병렬 및 이방성 하드웨어를 활용하여 계산 생물학을 가속화한다. 이 플랫폼은 단일 서버에서 최대 12.4억 개의 에이전트, 노트북에서는 최대 1,200만 개의 에이전트를 시뮬레이션할 수 있으며, 최신의 순차 기반 기준 대비 최대 124배의 성능 향상을 달성하고, 72개의 CPU 코어를 사용할 경우 76배의 병렬 성능 향상을 기록한다. C++ 및 SBML 기반의 세포내 동역학을 지원한다.

ABSTRACT

Abstract Computer simulation is an indispensable tool for studying complex biological systems. In particular, agent-based modeling is an attractive method to describe biophysical dynamics. However, two barriers limit faster progress. First, simulators do not always take full advantage of parallel and heterogeneous hardware. Second, many agent-based simulators are written with a specific research problem in mind and lack a flexible software design. Consequently, researchers have to spend an unnecessarily long time implementing their simulation and have to compromise either on model resolution or system size. We present a novel simulation platform called BioDynaMo that alleviates both of these problems researchers face in computer simulation of complex biological systems. BioDynaMo features a general-purpose and high-performance simulation engine. The engine simulates cellular elements, their interactions within a 3D physical environment, and their cell-internal genetic dynamics. Cell-internal dynamics can be described in C++ code or using system biology markup language (SBML). We demonstrate BioDynaMo’s wide range of application with three example use cases: soma clustering, neural development, and tumor spheroid growth. We validate our results with experimental data, and evaluate the performance of the simulation engine. We compare BioDynaMo’s performance with a state-of-the-art baseline, and analyze its scalability. We observe a speedup of 20–124× over the state-of-the-art baseline using one CPU core and a parallel speedup between 67× and 76× using 72 physical CPU cores with hyperthreading enabled. Combining these two results, we conclude that, on our test system, BioDynaMo is at least three orders of magnitude faster than the state-of-the-art serial baseline. These improvements make it feasible to simulate neural development with 1.24 billion agents on a single server with 1TB memory, and 12 million agents on a laptop with 16GB memory. BioDynaMo is an open-source project under the Apache 2.0 license and is available at www.biodynamo.org. Author summary Computer simulations of biological systems are crucial to gain insights into complex processes of living organisms. However, the development of increasingly large and complex simulations is a difficult task, partly because a strong background in biology as well as computer science is required. In this paper, we introduce BioDynaMo, an agent-based simulation platform with which life scientists can create simulations that are three orders of magnitude faster than the state-of-the-art baseline. By taking advantage of the latest developments in computing hardware, we build a platform that is highly optimized. This enables the simulation of 1.24 billion agents on a single server and 12 million agents on a laptop. BioDynaMo places a lot of focus on hiding computational complexity and providing an easy-to-use interface, such that the life scientist can concentrate on biological aspects, rather than computational. BioDynaMo helps scientists to translate an idea quickly into a simulation by providing common building blocks, and a modular and extensible software design. We analyze the performance of the platform and demonstrate the capabilities with three example use cases: soma clustering, neural development, and tumor spheroid growth. The results support the view that BioDynaMo will help open up new research opportunities for large-scale biological simulations.

연구 동기 및 목표

  • 기존의 에이전트 기반 시뮬레이터들이 현대 하드웨어를 충분히 활용하지 못하고 있으며 확장성이 떨어지는 점을 해결하기 위해.
  • 대규모 생물학적 시스템을 시뮬레이션할 때 개발 시간과 계산 부담을 줄이기 위해.
  • 생명과학자들이 저수준의 구현에 신경 쓰지 않고도 생물학에만 집중할 수 있도록 하는 유연하고 모듈화되며 사용자 友好的한 플랫폼을 제공하기 위해.
  • 신경 발달 및 종양 구상체 성장과 같은 복잡한 생물학적 과정을 고해상도로 대규모로 시뮬레이션할 수 있도록 하기 위해.

제안 방법

  • 플랫폼은 일반 목적의 시뮬레이션 엔진을 사용하여 세포 에이전트, 3차원 물리적 상호작용, 세포내 유전적 동역학을 모델링한다.
  • 세포내 동역학은 네이티브 C++ 코드 또는 SBML을 통해 구현되어 시스템 생물학 도구와의 상호운용성을 확보한다.
  • 멀티코어 CPU에서의 병렬 실행을 최적화하고 스레드 가상화를 지원하여 확장성을 향상시킨다.
  • 재사용과 생물학적 빌딩 블록의 통합을 촉진하기 위해 모듈화되고 확장 가능한 소프트웨어 아키텍처를 채택한다.
  • 저수준의 계산 복잡성을 추상화하여 생물학자들이 고수준 인터페이스를 쉽게 사용할 수 있도록 한다.
  • 실제 생물학적 응용 사례를 사용하여 성능를 평가하고 최신 기준 기반 시뮬레이터와 비교한다.

실험 결과

연구 질문

  • RQ1일반 목적의 시뮬레이션 플랫폼이 대규모 생물학적 시뮬레이션에서 기존의 에이전트 기반 시뮬레이터보다 상당한 성능 향상을 이룰 수 있는가?
  • RQ2BioDynaMo가 다중 코어 CPU에서 세포 및 유전적 동역학 모델링의 고정밀도를 유지하면서 얼마나 잘 확장될 수 있는가?
  • RQ3BioDynaMo의 성능가 최신 기준 기반 시뮬레이터와 비교해 순차적 및 병렬 실행에서 각각 어떻게 성능을 냈는가?
  • RQ4BioDynaMo는 뇌 신경 발달 및 종양 구상체 성장과 같은 생물학적으로 관련된 과정을 이전에는 볼 수 없었던 규모로 시뮬레이션할 수 있는가?
  • RQ5고성능 컴퓨팅에 깊은 전문 지식이 없어도 연구자들이 개발 오버헤드를 얼마나 줄일 수 있는가?

주요 결과

  • BioDynaMo는 단일 CPU 코어에서 최신 순차 기반 기준 대비 20–124배의 성능 향상을 기록한다.
  • 72개의 물리적 CPU 코어와 스레드 가상화를 활용할 경우, BioDynaMo는 병렬 성능 향상으로 67–76배를 기록한다.
  • 순차적 및 병렬적 개선을 병합하면, 테스트 시스템에서 BioDynaMo는 기준 대비 최소 3개의 지수배 빠른 성능을 확보한다.
  • 1TB 메모리가 탑재된 단일 서버에서 12.4억 개의 에이전트를 성공적으로 시뮬레이션하여 대규모 신경 발달 시뮬레이션의 가능성과 실현 가능성을 입증한다.
  • 또한 16GB 메모리가 탑재된 노트북에서도 1,200만 개의 에이전트를 시뮬레이션할 수 있어 이식성과 효율성을 입증한다.
  • 실험 데이터와의 검증을 통해 세 가지 응용 사례(체세포 집합, 신경 발달, 종양 구상체 성장)에서 모두 생물학적으로 관련성 있고 정확한 시뮬레이션 결과를 도출함을 확인한다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.