• 검색 결과가 없습니다.

분산 컴퓨팅 환경을 위한 데이터 가시화 파이프라인 개발

N/A
N/A
Protected

Academic year: 2021

Share "분산 컴퓨팅 환경을 위한 데이터 가시화 파이프라인 개발"

Copied!
17
0
0

로드 중.... (전체 텍스트 보기)

전체 글

(1)

ISBN 978-89-6221-001-2 98560

분산 컴퓨팅 환경을 위한 데이터 가시화 파이

프라인 개벌

(Development of Visualization Pipeline for

Distributed Computing Environment)

구 기 범 (

Gee Bum Koo)

voxel@kisti.re.kr

(2)
(3)

그림 차례

(4)

1. 서론

그리드와 같은 차세대, 고성능 컴퓨팅 환경에서는 이제 단일 시뮬레이션이 테라 바이트 수준의 데이터를 생성하는 경우를 어렵지 않게 볼 수 있다. 이에 따라서 대용량의 데이터를 빠르게 가공해서 시각적으로 표현하고, 그 결과를 여러 사람 이 공유할 수 있도록 도와주는 가시화 소프트웨어에 대한 수요도 증가하고 있다. 하지만 AVS/Express나 EnSight Gold와 같은 상용 가시화 소프트웨어는 다양한 기능을 갖추고 있음에도 불구하고, 도입가격이 높은데다가 그리드나 웹 서비스에 대한 지원이 상대적으로 취약하다는 한계를 갖고 있다. 그렇기 때문에 해외의 주 요 그리드 관련 프로젝트에서는 고유의 환경에 최적화된 데이터 가시화 소프트 웨어(또는 환경)를 개발하기 위한 별도의 프로젝트를 추진하고 있다.

(5)

2. Visualization Software 비교

이 장에서는 대표적인 visualization 애플리케이션을 기능별로 비교한다. 각 표에 서 빈 칸으로 남아있는 항목들은 아직 완전한 조사가 진행되지 않았기 때문에 해당 항목에 대한 정확한 내용을 모두 기입하지는 않았지만, 향후 지속적인 분석 을 통해 각 애플리케이션의 대표적인 기능을 모두 확인할 수 있도록 내용을 보 강해 나갈 예정이다. [표 2-1] Visualization software 비교(일반사항)

일반사항 COVISE VisIT OpenDX ParaView VisTrails SCIRun 제작 HLRS LLNL IBM Kitware Utah Utah 개발년도 1993 2000 2000 2000 2005 1992

원격 가시화 Yes Yes

워크플로우 Yes Yes Yes Yes Yes

Multiple visualization Yes

병렬 데이터 처리 Yes Yes

[표 2-2] Visualization software 비교(렌더링 알고리즘)

렌더링 알고리즘 COVISE VisIT OpenDX ParaView VisTrails SCIRun

VTK 기반 여부 Yes Yes Yes

직접볼륨렌더링 Yes Yes Yes Yes

병렬 렌더링 Yes Yes

입체영상 지원 A A RB

[표 2-3] Visualization software 비교(가상현실 지원여부)

가상현실 지원 COVISE VisIT OpenDX ParaView VisTrails SCIRun Tracking device Yes

(6)

표 [2-4] Visualization software 비교(실행환경)

플랫폼 COVISE VisIT OpenDX ParaView VisTrails SCIRun Unix/Linux Yes Yes Yes Yes Yes Yes

Windows Yes Yes Yes Yes

SMP Yes Yes Yes Yes

Cluster Yes Yes No Yes

WAN Yes No Yes Yes

[표 2-5] Visualization software 비교(협업환경 지원)

협업환경 COVISE VisIT OpenDX ParaView VisTrails SCIRun

Sharing Yes Yes

A/V conference Yes No No No

[표 2-6] Visualization software 비교(계산제어 기능)

계산제어 COVISE VisIT OpenDX ParaView VisTrails SCIRun Simulation codes Yes No No No No Yes Step-wise control Yes No No No No Yes

[표 2-7] Visualization software 비교(개발자 지원)

개발자 지원 COVISE VisIT OpenDX ParaView VisTrails SCIRun Open source No Yes Yes Yes Yes Yes

License 계약기반 BSD MIT

Module extension Yes Yes Yes Yes Yes Yes Python interface Yes No

C/C++ interface Yes Yes Yes Yes

(7)

3. Visualization pipeline의 설계

Spaghetti는 아래의 목표를 달성하는 데에 주안점을 두고 설계가 이뤄졌다.

• High performance : visualization pipeline을 구성하는 모든 서비스는 초고속 네트워크로 연결된 다수의 고성능 컴퓨터에서 실행되는 것을 전제한다. 특히 대 부분의 서비스를 병렬 프로그램으로 구현하고, 각 서비스 사이의 효율적인 데이 터 교환을 위해 병렬 데이터 전송기법을 도입함으로써 대량의 데이터를 처리할 때에도 최대의 성능을 발휘하도록 했다.

(8)

가. Usage scenario

[그림 3-1]은 spaghetti의 사용 시나리오를 보여준다.

[그림 3-1] Spaghetti의 usage scenario

Service registry Scheduler Primitive service Primitive service Primitive service Primitive service Workbench UI Workbench UI XML representation of a task Workbench share Run-time control User Result

Primitive services are deployed by hand or (global) scheduler Users specify simulation/visualization process

via 2D / 3D user interface Global scheduler parses job representation, and then forks primitive services if necessary

Workbench UI retrieves service information, including location & capabilities of available primitive services

Users control the entire process of visualization & simulation via run-time control service

‘Workbench share’ enables geographically distributed users to share simulation result in real-time Service registry Scheduler Primitive service Primitive service Primitive service Primitive service Workbench UI Workbench UI XML representation of a task Workbench share Run-time control User Result

Primitive services are deployed by hand or (global) scheduler Users specify simulation/visualization process

via 2D / 3D user interface Global scheduler parses job representation, and then forks primitive services if necessary

Workbench UI retrieves service information, including location & capabilities of available primitive services

Users control the entire process of visualization & simulation via run-time control service

‘Workbench share’ enables geographically distributed users to share simulation result in real-time

나. 구성요소

y Workbench : Workbench는 workbench UI와 workbench share로 나눠지며, visualization pipeline의 사용자 인터페이스를 담당한다. Workbench UI는 말 그대로 데이터 가시화 파이프라인에 접근하기 위한 사용자 인터페이스로 이 는 다시 2차원 데스크톱 화면을 위한 UI와 3차원 가상현실 환경을 위한 UI로 분리해서 구현할 수 있다. Workbench share는 원격지 사용자들이 작업 결과 를 실시간으로 공유할 수 있도록 해준다.

(9)

자원의 성능은 어느 정도인지 등에 대한 정보를 모두 담고 있다.

y Scheduler : Scheduler는 Workbench UI로부터 작업 내역을 전달 받아서 computing pool의 고성능 컴퓨팅 자원에 각 작업을 할당하는 역할을 수행한 다. Scheduler가 컴퓨팅 자원을 사용할 때에는 service registry로부터 각 자 원의 현재 상태를 전달받아서 가장 효율적이라고 판단하는 자원에 작업을 할 당한다. y 프리미티브 서비스(Primitive service) : 프리미티브 서비스는 실제로 데이터 를 처리하는 웹 서비스의 집합이다. 각각의 서비스는 Web Service 표준을 따 르는 인터페이스를 갖고 있기 때문에 Spaghetti뿐만 아니라 다른 애플리케이 션도 사용할 수 있도록 구현된다.

(10)
(11)

[표 3-2] 프리미티브 서비스 목록 서비스 그룹 프리미티브 서비스 서비스 그룹 프리미티브 서비스 Data conversion ConvertHDF5 ConvertNetCDF ConvertTecplot ConvertPlot3D ConvertCGNS Render RenderPolygon RenderVolume Display SAGE Ruler MeasureDistance MeasureArea MeasureVolume Iso-value IsoLine

(12)

◯ XML 파서/인코더 : 외부로부터 전송되는 모든 데이터는 XML 형태로 표현된 다. 파서는 XML로 표현된 데이터를 코어 알고리즘이 활용하기 위한 고유의 포 맷으로 변환하고, 인코더는 데이터를 외부로 보내기 전에 XML 형태로 변환하는 역할을 맡는다. [그림 3-2] 단일 프리미티브 서비스의 구조 gSOAP

gSOAP QUANTA libraryQUANTA library

libxml

libxml

XML parser XML encoder Data merger

Data merger Data splitterData splitter

Input

Input OutputOutput

SOAP API I1 I1 IInn OO11 OOmm API API Core Core Data channel (parallel sockets) Data channel (parallel sockets) Running context

Running context Internal Internal

representation representation Service context Service context Viewing Viewing V1 V1 View command (UDP) gSOAP

gSOAP QUANTA libraryQUANTA library

libxml

libxml

XML parser XML encoder Data merger

Data merger Data splitterData splitter

Input

Input OutputOutput

SOAP API I1 I1 IInn OO11 OOmm API API Core Core Data channel (parallel sockets) Data channel (parallel sockets) Running context

Running context Internal Internal

(13)
(14)

기능만 구현돼있지만 지속적인 개선을 통해 계산과학분야에서 사용하는 다양한 포맷의 파일을 가공할 수 있게 될 것이다. ◯ 등가면 추출 서비스 : 3차원 볼륨 데이터와 임계값(threshold)을 원격지로부 터 받아서 볼륨 데이터로부터 임계값에 해당하는 등가면(iso-surface)을 폴리건 데이터로 추출해서 외부에 전송해준다. ◯ 히스토그램 서비스 : 볼륨 데이터의 특성을 파악하기 위해 입력으로 받은 볼 륨 데이터에 대한 2, 3, 4차원 히스토그램을 생성한다. ◯ 볼륨 렌더링 서비스 : 원격지로부터 볼륨 데이터를 받아서 그림을 그린 후 SAGE에 의해 운영되는, 원격지에 있는 고해상도 출력장치에 이미지를 출력한다. 볼륨 렌더링 서비스는 소프트웨어 레이캐스팅과 그래픽스 하드웨어를 이용한 볼 륨 렌더링 알고리즘이 각각 구현돼 있지만, 외부에서 보기에는 같은 API를 사용 하기 때문에 사용자는 내부 구현에 대해서는 신경쓰지 않아도 된다. ◯ 폴리곤 렌더링 서비스 : 원격지로부터 폴리곤 데이터를 받아서 그림을 그린 후, SAGE에 의해 운영되는 원격지의 고해상도 출력장치에 이미지를 출력한다. ◯ 전이함수(Transfer function) : 전이함수는 볼륨 데이터를 구성하는 값의 범 위 중 특정 값(또는 범위)에 대해 색상과 투명도를 지정하기 위해 사용한다. 이 서비스는 빈번한 사용자 인터액션이 필요하고 원격 가시화를 적용하는 것이 부 적절하기 때문에 웹 서비스가 아닌 stand-alone 애플리케이션으로 개발됐다.

(15)
(16)
(17)

7. 참고문헌

z K. W. Brodlie, J. Brooke, M. Chen, D. Chisnall, C. J. Hughes, N. W. John, M. W. Jones, M. Riding, N. Roard, M. J. Turner and J. Wood, "A Framework for Adaptive Visualization", IEEE Visualization 2006.

z Chris Hughes, Nigel W. John, and Mark Riding, "A generic approach to High Performance Visualization enabled Augmented Reality", UK e-Science Programme All Hands Meeting, Nottingham, September 2006 z David Chisnall and Min Chen, "The Making of SimEAC", 3rd IEEE

International Conference on Autonomic Computing, Dublin, Ireland, 2006 z Chris Hughes and Nigel W. John, "A flexible infrastructure for delivering

Augmented Reality enabled Transcranial Magnetic Stimulation", In Proc. MMVR 14, Long Beach, California, IOS Press, ISBN 1-58603-583-5, 2006, pp219-224

z Mark Riding, Jason Wood, Ken Brodlie, John Brooke, Min Chen, David Chisnall, Chris Hughes, Nigel W. John, Mark W. Jones, Nicolas Roard, "e-Viz: Towards an Integrated Framework for High Performance Visualization", Proceedings of the UK e-Science All Hands Meeting 2005, EPSRC, ISBN 1-904425-53-4, pp1026-1032

z QUANTA Library, http://www.evl.uic.edu/cavern/quanta z gSOAP Library, http://www.cs.fsu.edu/~engelen/soap.html z VTK, http://www.vtk.org

z libxml, http://xmlsoft.org

수치

[그림  3-1]은  spaghetti의  사용  시나리오를  보여준다.
[표  3-1]  Spaghetti를  구성하는  프리미티브  서비스  그룹 서비스  그룹  명 주          요          기          능 Data  conversion 시뮬레이션에서  만들어진  데이터를  XML로  변환하는  서비스  집합 Numerical  operation 볼륨/다각형  데이터의  스칼라/벡터  값에  대한  수치연산을  수행 하는  서비스  집합 Iso-value 볼륨  데이터로부터  등가면(iso-line/i
[표  3-2]  프리미티브  서비스  목록 서비스  그룹 프리미티브  서비스 서비스  그룹 프리미티브  서비스 Data  conversion ConvertHDF5 ConvertNetCDF ConvertTecplot  ConvertPlot3D ConvertCGNS  Render RenderPolygonRenderVolumeDisplaySAGE Ruler   MeasureDistance MeasureArea  MeasureVolume  Iso-value I

참조

관련 문서

USDA 연구교육경제국은 농업연구소(Agricultural Research Service, ARS), 주 협동연구교육원(Cooperative State Research, Education and Extension

To analyze the demand and supply of Oriental Medicine Hospital status and population trends were analyzed inthe hospital service area.. As a result, the Service Area of the

The purpose of this study is to examine the service quality of a tennis court which is one of public sport facilities and analyze a difference in

Design consulting service focusing on design development is dominant in Korean design industry. There has been design consulting service supported by

The second, Korean service industry must reclaim new export market such as China. Korean service industry need service export for China... The third, Korean service industry

 waiting time for service, customer complaints, waiting time for service, customer complaints, cleanliness, food quality, order accuracy,. cleanliness, food quality,

§ Even when a process is demand constrained (utilization is less than 100%), waiting time for service can be substantial due to variability in the arrival and/or service

With some 300 thousand youths preparing for civil service examinations, it is necessary to improve the civil service examination system with consideration