AMGCL은 AMG(대수적 다중 그리드) 방법을 사용하여 대규모 희소 선형 시스템을 해결하기 위한 헤더 전용 C++ 라이브러리입니다. AMG는 예를 들어 구조화되지 않은 그리드에서 PDE를 이산화하여 발생하는 방정식 시스템의 해를 구하는 가장 효과적인 반복 방법 중 하나입니다. 이 방법은 기본 형상에 대한 정보가 필요하지 않기 때문에 다양한 계산 문제에 대한 블랙박스 솔버로 사용할 수 있습니다. AMG는 독립형 솔버가 아닌 반복 솔버(예: 공액 기울기, BiCGStab 또는 GMRES) 내의 선조건자로 사용되는 경우가 많습니다.
AMGCL은 CPU에 AMG 계층 구조를 구축한 다음 이를 제공된 백엔드 중 하나로 전송합니다. 이를 통해 OpenCL, CUDA 또는 OpenMP 기술의 도움으로 솔루션 단계를 투명하게 가속화할 수 있습니다. 사용자는 AMGCL과 사용자 코드 간의 긴밀한 통합을 가능하게 하는 자체 백엔드를 제공할 수 있습니다.
http://amgcl.readthedocs.io/에서 AMGCL 문서를 참조하세요.
데미도프, 데니스. AMGCL: 효율적이고 유연하며 확장 가능한 대수적 멀티그리드 구현입니다. Lobachevskii Journal of Mathematics, 40(5):535–546, 2019년 5월. doi pdf bib
데미도프, 데니스. AMGCL - 대규모 희소 선형 시스템의 효율적인 솔루션을 위한 C++ 라이브러리입니다. Software Impacts, 6:100037, 2020년 11월. doi bib
데미도프, 데니스, 린 무, 빈 왕. C++ 메타프로그래밍을 통해 Stokes 문제에 대한 선형 솔버를 가속화합니다. 전산과학 저널(2020): 101285. doi arxiv bib