RFS

v0.13.0

RFS 실물 파티클 뷰 — 서버랙을 통과한 공기가 데워져 위로 오르는 측면 단면

메시를 다시
만들지 않는다

설비를 옮기면 유동이 그 자리에서 바뀐다. 데이터센터 열관리를 위한 실시간 GPU 유체 시뮬레이터.

운전 장면

70%
65%

브라우저 데모 해석

냉기와 발열이 맞서는 기준 상태입니다.

장면
기준 운전
먼저 볼 곳
랙 배면
다음 조작
부하와 급기를 따로 움직여 비교

위 화면은 브라우저에서 도는 2D 축소판이다. 슬라이더를 움직이거나 화면을 문지르면 유동이 즉시 반응한다. 실물 RFS 는 Unity 6.4 위에서 3D δ-SPH 를 돌린다 — 파티클 100,000개, 60 FPS.

해가 나올 즈음에는
이미 다른 결정을 내린 뒤다

범용 CFD 도구는 시뮬레이션 한 건에 수 시간에서 수 일이 걸린다. 랙 한 대를 옮길 때마다 메시를 다시 만들고 처음부터 다시 풀어야 하므로, 운영 중에 답을 얻는 용도로는 쓰이지 않는다. 그래서 현장의 배치 변경은 대개 계산이 아니라 경험으로 결정된다.

RFS 는 정확도의 상한을 낮추는 대신 회신 시간을 바꾼 도구다. 발열량을 올리고, 급기 밸브를 조이고, 랙을 한 칸 옮기는 조작이 같은 화면 안에서 유동에 반영된다. 검증할 것이 "결과 파일"이 아니라 "지금 보고 있는 장면"이 된다.

범용 CFD 도구
배치를 바꾸면 메시 재생성 → 재계산. 한 건에 수 시간~수 일
RFS
배치·발열·제어 변경이 같은 세션 안에서 유동에 반영된다

유체 엔진

GPU Compute Shader 위의 δ-SPH

격자를 깔지 않는다. 공기를 입자로 놓고 이웃 입자끼리 밀도·압력·열을 주고받게 한다. 벽이 움직여도 격자를 다시 만들 일이 없다 — 실시간이 가능한 이유가 여기에 있다.

  • 보간 커널

    Wendland C2

    Poly6·Spiky 혼용을 걷어내고 단일 경로로 통일했다

  • 상태방정식

    Tait

    약압축성 가정. 압력 반복 없이 밀도에서 압력을 직접 얻는다

  • 벽면 경계

    Adami Ghost Particle

    엣지·코너까지 덮는다. 경계에서 입자가 새던 결함을 해소한 방식

  • 시간 적분

    CFL 적응 서브스텝

    유속이 빨라지면 스텝을 자동으로 잘게 쪼갠다

  • 배속

    0.1× — 10×

    배속을 바꿔도 같은 물리 결과가 나오도록 시간 불변을 보장한다

  • 열·습도

    입자 간 전도 + 부력

    습공기 밀도 보정을 포함한다

  • 주기 경계

    PBC · 최소 이미지 규약

    셀 래핑으로 무한 반복 공간을 다룬다

  • 이웃 탐색

    공간 해시 그리드

    SpatialHash 커널 1개가 전담한다

01

GPU 커널

53+

Compute Shader 10개 · HLSL 67개로 분할

02

파티클

100,000

최대 512,000. 60 FPS 안정 구간 기준

03

파티클 1개의 크기

20B

AoS 를 SoA 6개 버퍼로 갈라 얻은 값

04

테스트

2,000+

499개 파일 · EditMode · PlayMode · Performance

전산실에 있는 물건을 그대로 안다

유동만 푸는 것으로는 답이 안 나온다. 열을 만드는 것과 식히는 것이 각자의 제어 논리를 가지고 장 안에 들어가 있어야 배치 변경이 의미를 갖는다.

항온항습기 FWU

PID 자동 제어로 목표 온도를 좇는다. 열교환은 ε-NTU 로 계산하고, 프리쿨링·쿨링 밸브와 댐퍼 모드를 각각 조작할 수 있다.

서버랙

CFM 기반으로 통과 공기에 열을 싣는다. 동적 전력 프로파일 5종을 갖고 있고, 장애 상황을 만들어 그때 열이 어디로 가는지 볼 수 있다.

팬 · 댐퍼 · 냉각코일

듀얼 원뿔 존 모델로 GPU 파티클 물리에 직접 개입한다. 후처리로 그린 화살표가 아니라 실제로 입자를 민다.

온도계

물리 기반 센서 응답 특성을 갖는다. 값이 즉시 튀지 않고 실제 계기처럼 따라온다. Cool Zone 과 Hot Zone 을 자동으로 분류한다.

급기구 · 배기구

CFD inlet / outlet 패턴을 따른다. 경계에 걸린 파티클을 자동으로 재배치해 유입·유출이 끊기지 않게 한다.

보이는 방식

읽는 방법을 네 가지로 나눈다

  1. 파티클

    온도로 색을 매핑하고 발광과 LOD 를 건다. 공기가 어디서 데워지는지 그대로 보인다.

  2. 트레일

    Ring Buffer 로 궤적을 남긴다. 한 순간이 아니라 지나온 경로를 본다.

  3. 히트맵 슬라이스

    온도·속도·압력·밀도·습도 다섯 물리량의 단면을 5패스 GPU 파이프라인으로 그린다. X · Y · Z 키로 축을 바꾼다.

  4. 벡터 필드

    화살표 글리프와 스트림라인을 GPU 인스턴싱으로 띄운다. 방향과 세기를 함께 읽는다.

RFS 실물 렌더

RFS 상면 뷰 — 랙 상부에서 데워진 입자가 초록으로 퍼지고 주변 저온 입자는 청록으로 남는다
상면 · 랙 상부의 열기둥
저온 중간 고온

두 장 모두 RFS 실물의 파티클 뷰다. 저온이 청록, 고온이 초록이다 — 이 페이지 첫 화면의 색도 같은 규칙을 쓴다.

시뮬레이터가 아니라 작업 환경이다

배치를 바꿔 보려면 배치를 바꿀 수 있어야 한다. RFS Editor 는 Unity UI Toolkit 으로 만든 런타임 편집 환경이고, 시뮬레이션이 도는 채로 물건을 옮긴다.

오브젝트 편집
이동·회전·스케일 핸들, 다중 선택, Undo / Redo, 드래그 앤 드롭 배치
속성 패널
실시간 속성 편집. 관제 시스템의 XD 태그를 여기서 바인딩한다
리플레이
CSV 또는 XD API 를 데이터소스로 삼아 시계열을 재생하고, 실측 대비 정확도 리포트를 만든다
AI Advisor
26개 규칙의 Rule Engine 과 LLM 프로바이더 4종(Anthropic · OpenAI · Gemini · 로컬 Ollama) 연동
모니터링
PUE · COP · 전력 · CO₂ 대시보드, MetricsHUD 7섹션 26메트릭
프로젝트
생성·저장·불러오기, 다중 씬, glTF / GLB 3D 모델 임포트

손에 익는 키

  • Space 일시정지 · 재개
  • H 히트맵
  • XYZ 슬라이스 축
  • F3 성능 통계
  • Tab UI 접기

다섯 켜

  1. L1

    애플리케이션

    RFS Editor · Simulation3D · AI Advisor · 리플레이

  2. L2

    파이프라인 · 컨트롤러

    SimulationPipeline → 스테이지 10개 → 컨트롤러 26개

  3. L3

    GPU 컴퓨트

    SPHCore 8 · DomainExt 14 · SpatialHash 1 · TempGrid 8 · ObjectGrid 7 · Integration 5 · Scatter 4 · Trail 2 · GlobalSDF 3 · Coil 1

  4. L4

    데이터 버퍼

    SoA 버퍼 6개 · ParticleData 20B · 충돌 메시 데이터

  5. L5

    외부 통신

    Socket.IO v2 (RFS-XD 관제 연동) · REST API · CSV 내보내기

돌려 보려면 무엇이 필요한가

DirectCompute 를 쓰므로 NVIDIA GPU 를 권장한다. 아래는 개발 저장소가 명시한 값 그대로다.

RFS 시스템 요구사항 — 최소 사양과 권장 사양
항목 최소 권장
운영체제 Windows 10 64bit Windows 11
GPU GTX 1660 · VRAM 6GB RTX 3060 이상 · VRAM 8GB 이상
메모리 16 GB 16 GB 이상
엔진 Unity 6.4 (6000.4.5f1) · URP 17.2

도입 검토·기술 문의는 개발사인 트웬티온스로 연락하면 된다. 제품은 독점 소프트웨어이고, 평가판 제공 여부는 협의 사항이다.

RFS 도입 문의

hello@twentyoz.kr · 070-4353-1190