Amazon Web Services 한국 블로그

AWS SimSpace Weaver 정식 출시 – 클라우드에서 대규모 공간 시뮬레이션 실행

AWS는 오늘, 클라우드에서 대규모 실시간 공간 시뮬레이션을 실행하는 새로운 컴퓨팅 서비스인 AWS SimSpace \Weaver를 발표합니다. SimSpace Weaver를 사용하면 시뮬레이션 개발자가 더 이상 하드웨어의 컴퓨팅 및 메모리로 인한 제약을 받지 않습니다.

조직들은 드물거나 위험하거나 실제 환경에서 테스트하기에 비용이 많이 드는 상황에서 시뮬레이션을 실행합니다. 예를 들어 도시 관리자가 대응 시스템을 테스트하기 위해 자연 재해가 도시에 닥칠 때까지 기다릴 수는 없습니다. 이벤트 기획자들이 경기가 교통 상황에 미칠 영향을 파악하기 위해 대규모 스포츠 이벤트가 열릴 때까지 기다릴 수는 없습니다. 이와 같은 시나리오는 기획자가 다양한 상황을 테스트하고 각 시스템을 조정할 수 있는 안전한 환경에서 시뮬레이션해야 합니다.

오늘날까지 공간 시뮬레이션은 일반적으로 단일 하드웨어에 국한되어 실행되었습니다. 개발자가 수많은 독립적이고 동적인 엔터티로 이루어진 더 크고 복잡한 환경을 시뮬레이션하려면, 더 큰 컴퓨터를 프로비저닝해야 했습니다. 시뮬레이션 개발자들은 규모와 충실도 사이에서 절충을 해야 했습니다. 즉, 환경의 규모와 독립 엔터티의 수를 결정해야 했습니다.

우리가 살고 있는 세계가 복잡한 만큼 개발자들이 시뮬레이션하고자 하는 시나리오도 매우 복잡할 수밖에 없습니다. 대규모 콘서트나 스포츠 이벤트가 교통에 미치는 영향을 예로 들 수 있습니다. 이러한 이벤트를 시뮬레이션하려면 사람과 차량을 나타내는 수십만 개의 독립적이고 동적인 엔터티를 모델링해야 합니다. 각 엔터티는 전체 환경에 걸쳐 이동하고 다른 엔터티와 상호 작용하므로, 이와 관련한 고유한 행동 양식을 모델링해야 합니다. 이를 실제 규모로 시뮬레이션하려면 단일 인스턴스에서 제공되는 것 이상의 CPU와 메모리가 필요합니다.

SimSpace Weaver를 사용하면 여러 Amazon Elastic Compute Cloud(Amazon EC2) 인스턴스에 걸쳐 대규모로 시뮬레이션을 실행할 수 있습니다. 이 서비스는 백만 개 이상의 독립적이고 동적인 엔티티를 시뮬레이션하도록 지원합니다.

SimSpace Weaver의 사용 사례
시뮬레이션의 규모나 복잡성을 늘려야 하는 경우에 SimSpace Weaver를 사용합니다. SimSpace Weaver는 군중을 시뮬레이션하는 데 탁월합니다. 예를 들어 대규모 이벤트를 계획하거나 신규 스타디움과 같은 인프라를 구축하려 할 때 매우 유용합니다. 또한 차량, 거주자 및 기타 물체가 포함된 스마트 시티를 시뮬레이션하는 데에도 적합합니다.

AWS SimSpace Weaver를 사용하면 외부 클라이언트를 시뮬레이션에 연결하여, 여러 사용자와 실시간으로 상호 작용하고 시뮬레이션을 함께 볼 수 있습니다.

SimSpace Weaver의 작동 방식
SimSpace Weaver를 사용하면 여러 인스턴스에 걸쳐 공간 시뮬레이션 워크로드를 병렬로 실행할 수 있습니다. 시뮬레이션에 필요한 컴퓨팅 파워와 이를 파티션으로 분할하는 방법을 지정하여 최대 10개의 EC2 인스턴스로 시뮬레이션을 확장합니다. SimSpace Weaver는 EC2 인스턴스의 프로비저닝을 처리하고, 시뮬레이션 애플리케이션을 시작하고, 시뮬레이션 종료 후 환경을 정리합니다.

다음 이미지는 공간 영역(이 경우에는 도시)이 여러 인스턴스에 걸쳐 공간적으로 어떻게 분할되는지 보여줍니다. 각 행은 인스턴스를 나타냅니다. 이 이미지의 예제 시뮬레이션에는 10개의 인스턴스가 포함되어 있으며 각 인스턴스는 16개의 파티션을 처리합니다.

여러 인스턴스로 분할된 지도

지도 제공: Amazon Location Service

여러 파티션으로 작업할 때는 파티션 간 엔터티 전송의 복잡성에 대해 걱정할 필요가 없습니다. SimSpace Weaver 데이터 복제 시스템은 파티션이 동일한 EC2 인스턴스에 있든 다른 인스턴스에 있든 관계없이 전송을 위한 네트워킹 및 메모리 관리 작업을 처리합니다.

SimSpace Weaver가 제공하는 또 다른 중요한 기능은 스케줄러입니다. SimSpace Weaver 스케줄러는 모든 분산 파티션을 설정된 시뮬레이션 틱 속도(10, 15 또는 30Hz)로 동기화된 상태로 유지하므로, 시뮬레이션이 단일 시스템에서 실행되는 것처럼 동작합니다.

SimSpace Weaver는 여러 인스턴스에 걸쳐 시뮬레이션을 통합할 수 있는 인프라를 제공하지만 시뮬레이터는 아닙니다. AWS SimSpace Weaver C++ SDK를 코드와 통합하여 시뮬레이션을 구축합니다. SDK와 통합하면 애플리케이션이 인스턴스에서 실행되는 SimSpace Weaver 소프트웨어와 상호작용할 수 있습니다. 따라서 SimSpace Weaver가 시뮬레이션된 모든 엔터티의 전반적 상태를 추적하고 시뮬레이션 애플리케이션 간에 엔터티를 손쉽게 전송할 수 있습니다. Unreal Engine 5 또는 Unity를 사용하여 빌드하는 개발자는 SimSpace Weaver 기본 제공 플러그인을 활용하여 프로젝트를 빠르게 시작할 수 있습니다.

시작하기
AWS Management Console 또는 AWS Command Line Interface(AWS CLI)에서 SimSpace Weaver를 시작할 수 있습니다.

시작하기

콘솔에서 원클릭 샘플을 사용하여 첫 번째 시뮬레이션을 빠르게 시작할 수 있습니다. 여기에 네 개의 파티션으로 분할된 시뮬레이션의 간단한 예가 나와 있습니다. 이 시뮬레이션에는 서로를 피하거나 고정된 물체를 피하면서 환경 전체를 자유롭게 이동하는 구형 엔터티가 포함되어 있습니다.

원클릭 시뮬레이션

이 마법사는 데모 시뮬레이션 실행을 위한 주요 단계를 안내합니다.

  1. 클라이언트 데모 애플리케이션을 다운로드합니다. 이 애플리케이션은 나중에 클라우드에서 실행되는 시뮬레이션을 보는 데 사용할 수 있는 사전 빌드된 애플리케이션입니다. 이 데모 애플리케이션은 Windows 운영 체제가 설치된 컴퓨터에서만 실행할 수 있습니다.
  2. 클라우드에서 시뮬레이션 인프라를 시작합니다. SimSpace Weaver가 이 시뮬레이션을 실행하는 데 필요한 모든 인프라를 배포합니다.
  3. 첫 단계에서 다운로드한 데모 애플리케이션을 사용하여 시뮬레이션을 봅니다. 다음 이미지는 이 시뮬레이션을 실행한 결과를 보여줍니다. 각 색상은 각각의 파티션을 나타냅니다.

시뮬레이션 결과

지금 이용 가능
SimSpace Weaver를 사용하는 개발자는 선결제 요금이나 라이선스 없이 시뮬레이션을 실행하는 시간동안 사용한 인스턴스 수만큼만 비용을 지불합니다.

SimSpace Weaver는 미국 동부(오하이오), 미국 동부(버지니아 북부), 미국 서부(오레곤), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 유럽(아일랜드), 유럽(프랑크푸르트) 및 유럽(스톡홀름) AWS 리전에서 사용할 수 있습니다.

지금 바로 콘솔과 AWS CLI에서 SimSpace Weaver를 시작할 수 있습니다. 서비스 페이지에서 SimSpace Weaver에 대해 자세히 알아보세요.

— Marcia