KR101811317B1 - Independent platform for executing web-based simulation using one physical server - Google Patents

Independent platform for executing web-based simulation using one physical server Download PDF

Info

Publication number
KR101811317B1
KR101811317B1 KR1020160177266A KR20160177266A KR101811317B1 KR 101811317 B1 KR101811317 B1 KR 101811317B1 KR 1020160177266 A KR1020160177266 A KR 1020160177266A KR 20160177266 A KR20160177266 A KR 20160177266A KR 101811317 B1 KR101811317 B1 KR 101811317B1
Authority
KR
South Korea
Prior art keywords
simulation
execution
web
unit
calculation
Prior art date
Application number
KR1020160177266A
Other languages
Korean (ko)
Inventor
전유천
홍성우
강민현
상진규
Original Assignee
(주)지플러스
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by (주)지플러스 filed Critical (주)지플러스
Priority to KR1020160177266A priority Critical patent/KR101811317B1/en
Application granted granted Critical
Publication of KR101811317B1 publication Critical patent/KR101811317B1/en

Links

Images

Classifications

    • G06F17/5009
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/4557Distribution of virtual machine instances; Migration and load balancing

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

The present invention relates to an independent platform for executing web-based simulation using one physical server. More specifically, by integrating technology elements for executing computational science-related simulations on one physical server, it is possible to easily construct a simulation environment at low cost. A user (researcher) can effectively execute the simulation by combining workflows according to a research method (experimental method) based on web. The independent platform includes a virtualization computing integrated operating environment control part (101), a computational science module management part (102), a computational resource management part (103), a web GUI service providing part (104), a database (105), and a computational resource (106).

Description

하나의 물리적 서버를 이용한 웹 기반 시뮬레이션 실행을 위한 독립 플랫폼{INDEPENDENT PLATFORM FOR EXECUTING WEB-BASED SIMULATION USING ONE PHYSICAL SERVER}[0001] INDUSTRIAL PLATFORM FOR EXECUTING WEB-BASED SIMULATION USING ONE PHYSICAL SERVER [0002]

본 발명은 하나의 물리적 서버를 이용한 웹 기반 시뮬레이션 실행을 위한 독립 플랫폼에 관한 것으로서, 더욱 상세하게는 계산과학 관련 시뮬레이션을 실행하기 위한 기술 요소들을 하나의 물리적 서버에 통합함으로써, 저비용으로 손쉽게 시뮬레이션 환경을 구축하고, 사용자(연구자)가 웹 기반으로 연구 방식(실험 방식)에 따라 워크플로우를 조합하여 효과적으로 시뮬레이션을 실행할 수 있도록 한, 하나의 물리적 서버를 이용한 웹 기반 시뮬레이션 실행을 위한 독립 플랫폼에 관한 것이다.
The present invention relates to a standalone platform for executing a Web-based simulation using a single physical server, and more particularly, to integrate technology elements for executing a simulation related to a science into a single physical server, And a standalone platform for executing a web-based simulation using one physical server, in which a user (researcher) can perform a simulation effectively by combining work flows according to a research method (experimental method) on the basis of a web.

계산과학(Computational Science)은 매우 복잡하고 비용이 많이 드는 과학 및 공학적 문제를 수학적 모델화하여 컴퓨터상에서 연산 처리를 통하여 필요한 제반 절차와 알고리즘, 기술을 정립하여 실제 필드에서 실험하기 전에 최소한의 실행오류를 사전에 방지하는 고도의 실험기술이다.Computational Science is a mathematical modeling of highly complex and costly scientific and engineering problems. It establishes necessary procedures, algorithms, and techniques through computation processing on a computer. Which is a high-level experimental technique.

한편, 시뮬레이션이란 어떠한 현상이나 장비의 동작을 컴퓨터로 가상으로 수행시키는 실험을 수행함으로써 실제 상황에서의 결과를 예측하는 것이다. 이러한, 시뮬레이션은 시간과 비용 측면에 큰 이점이 있어서, 계산화학 (Computational Chemistry), 전산유체역학(CFD, Computational fluid dynamics), 구조역학(Structural mechanics) 등을 다루는 연구 분야 및 산업 전반에 걸쳐 널리 이용되고 있다.Simulation, on the other hand, is to predict the actual situation by performing an experiment that simulates a phenomenon or the operation of equipment by a computer. These simulations have great advantages in terms of time and cost, and they are widely used in research fields that deal with computational chemistry, computational fluid dynamics (CFD), structural mechanics, .

일반적으로, 계산과학의 시뮬레이션을 실행하기 위한 인프라로서 수퍼 컴퓨터 같은 고성능컴퓨터(HPC : High Performance Computer)를 기반으로 하였으나, 점점 기술의 진보와 발전으로 저비용 고성능이 가능한 다운사이징 기술 혹은 그리드 컴퓨팅이나 클러스터 컴퓨팅, 클라우드 컴퓨팅으로 대체해 나가고 있다.In general, based on a high performance computer (HPC) such as a supercomputer as an infrastructure for executing a simulation of a computational science, downsizing technology capable of low cost and high performance due to progress and development of technology, or grid computing or cluster computing , And cloud computing.

기존의 웹 기반 시뮬레이션 수행환경은 전처리기, 해석코드, 가시화 프로그램, 계산 자원 및 작업관리기와 같은 다양한 시스템 컴포넌트(component)들로 구성된다. 그러나, 컴포넌트들 간의 표준화된 인터페이스 규칙이 없어 시뮬레이션 수행에 필요한 컴포넌트들의 상호 연동을 위해서 계산과학 모듈별로 새로운 인터페이스를 정의하고 이를 구현해야 하며, 다양한 종류의 계산과학 모듈(시뮬레이션 소프트웨어(SW: Software))을 수행하기 위해 계산자원의 효율적인 분배와 실행 작업을 관리 할 수 있는 기술이 필요하다.Existing web-based simulation execution environment consists of various system components such as preprocessor, analysis code, visualization program, calculation resource and task manager. However, since there is no standardized interface rule among components, it is necessary to define and implement a new interface for each calculation science module in order to interoperate components required for simulation. Various kinds of calculation science modules (software: SW) , There is a need for techniques to manage efficient distribution and execution of computational resources.

한편, 우리나라도 웹 기반 시뮬레이션 실행 인프라를 교육˙연구 환경에 융합하여 활용하기 위한 다양한 노력을 하고 있다. 2011년부터 교육과학기술부는 연구˙개발자 및 사용자 모두가 언제 어디서나 쉽게 접근하여 활용 할 수 있는 첨단 사이언스 교육ㅇ허브(EDISON; EDucation research Integration through Simulation On the Net) 개발 사업을 진행하고 있다. 첨단 사이언스 교육˙허브는 현재 열유체, 나노물리, 계산화학 분야 서비스를 제공하고 있으며, 2014년부터 구조역학, 전산설계 분야를 추가 개발하는 등 매년 적용 분야를 확대하고 있다.On the other hand, Korea has made various efforts to utilize web-based simulation execution infrastructure in education ˙ research environment. Since 2011, the Ministry of Education, Science and Technology (MEST) has been conducting EDISON (EDISON) research and development integration through simulation on the net, which enables researchers and users to easily access anytime and anywhere. Advanced Science Education ˙ Hub currently provides services in thermal fluids, nano physics, and computational chemistry. Since 2014, it has expanded its application field every year by further developing structural dynamics and computer design.

한국등록특허 [10-1371569]에서는 특정 서비스컴포넌트의 제공 기능을 기반으로 시뮬레이션 소프트웨어에 대한 개발 프로세스를 수행하고, 개발이 완료된 시뮬레이션 소프트웨어를 등록하는 개발지원장치, 및 상기 등록된 하나 이상의 시뮬레이션 소프트웨어의 조합을 통해 특정 시뮬레이션 프로세스를 처리하기 위한 워크플로우를 구성하여 등록하며, 상기 워크플로우를 구성하는 각 단위프로세스에 매핑된 시뮬레이션 소프트웨어를 구동하여 상기 특정 시뮬레이션 프로세스를 수행하는 시뮬레이션장치를 포함함으로써, 웹 환경에서 개발자로 하여금 다양한 시뮬레이션 소프트웨어를 생성할 수 있도록 지원하며, 사용자로 하여금 다양한 분야에 대응하는 시뮬레이션 프로세스를 수행하도록 지원하는 웹 기반 시뮬레이션 소프트웨어 관리 시스템 및 그 방법이 개시되어 있다.In Korean Patent No. 10-1371569, a development support device for performing a development process for simulation software based on a function of providing a specific service component, for registering the developed simulation software, and a combination of the registered one or more simulation software And a simulation apparatus for executing the specific simulation process by driving the simulation software mapped to each unit process constituting the workflow by registering and registering a workflow for processing a specific simulation process through the network, Web-based simulation software management system that supports the developer to create various simulation software and supports the user to perform simulation process corresponding to various fields, and Method is disclosed.

한국공개특허 [10-2016-0102552]에는 구성 가능한 컴퓨팅 자원의 풀로부터 구성 가능한 컴퓨팅 자원을 논리 서버 또는 가상 머신에 할당하기 위한 기술이 개시되어 있다.Korean Patent Laid-Open Publication No. 10-2016-0102552 discloses a technique for allocating configurable computing resources from a pool of configurable computing resources to a logical server or a virtual machine.

그러나, 기존의 계산과학 시뮬레이션 환경은 고성능 서버 기반으로서 고비용이 소요된다. 따라서, 최신의 그리드 기술을 적용한 저비용 및 고효율의 독립형 시뮬레이션 환경 구축의 필요성이 증가하고 있다.However, the existing computational science simulation environment is costly as a high performance server base. Therefore, there is an increasing need to build a low cost, high efficiency, stand-alone simulation environment using the latest grid technology.

또한, 시뮬레이션 소프트웨어(SW)들을 저장 및 관리하고 대규모 컴퓨팅 자원을 활용한 효율적인 시뮬레이션 실행 서비스를 제공하는 플랫폼의 개발 및 보급이 필요하다.
In addition, development and dissemination of a platform for storing and managing simulation software (SW) and providing an efficient simulation execution service utilizing large-scale computing resources are needed.

한국등록특허 [10-1371569](등록일자: 2014년03월03일)Korea Registered Patent [10-1371569] (Registered on March 03, 2014) 한국공개특허 [10-2007-0072387](공개일자: 2007년07월04일)Korean Patent Publication [10-2007-0072387] (Open date: July 04, 2007) 한국공개특허 10-2016-0102552 (공개일자: 2016년08월30일)Korean Patent Laid-Open No. 10-2016-0102552 (Publication date: August 30, 2016)

따라서, 본 발명은 상기한 바와 같은 문제점을 해결하기 위하여 안출된 것으로, 본 발명의 목적은 계산과학 관련 시뮬레이션을 실행하기 위한 기술 요소들을 하나의 물리적 서버에 통합함으로써, 저비용으로 손쉽게 시뮬레이션 환경을 구축하고, 사용자(연구자)가 웹 기반으로 연구 방식(실험 방식)에 따라 워크플로우를 조합하여 효과적으로 시뮬레이션을 실행할 수 있도록 한, 하나의 물리적 서버를 이용한 웹 기반 시뮬레이션 실행을 위한 독립 플랫폼을 제공하는 것이다.SUMMARY OF THE INVENTION Accordingly, the present invention has been made keeping in mind the above problems occurring in the prior art, and it is an object of the present invention to provide a simulation system, , And to provide a stand-alone platform for web-based simulation execution using a single physical server, allowing a user (researcher) to execute a simulation effectively by combining workflows based on a research method (experimental method) on the web.

본 발명의 실 시예들의 목적은 이상에서 언급한 목적으로 제한되지 않으며, 언급되지 않은 또 다른 목적들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
The objects of the embodiments of the present invention are not limited to the above-mentioned objects, and other objects not mentioned can be clearly understood by those skilled in the art from the following description .

상기한 바와 같은 목적을 달성하기 위한 본 발명의 일 실시예에 따른 하나의 물리적 서버를 이용한 웹 기반 시뮬레이션 실행을 위한 독립 플랫폼에 있어서, 가상화된 자원 내에서 운영 중인 미들웨어들을 효율적으로 관리하기 위한 가상화 컴퓨팅 통합 운영 환경 제어부(101); 시뮬레이션 실행에 필요한 다수의 계산과학 모듈을 저장 및 관리하고 시뮬레이션 실행 환경 인터페이스를 구성하기 위한 계산과학모듈 관리부(102); 상기 시뮬레이션 실행과 관련된 데이터의 입출력, 계산 자원 및 실행 작업을 관리하기 위한 계산 자원 관리부(103); 웹 그래픽사용자인터페이스(GUI) 기반으로 워크플로우를 구성하기 위한 웹 GUI 서비스 제공부(104); 상기 독립 플랫폼을 운용하고 상기 시뮬레이션을 실행하는데 필요한 데이터를 저장하고 있는 데이터베이스(105); 및 상기 시뮬레이션 실행을 위한 계산 자원(106)을 제공하는 것을 특징으로 한다.
According to another aspect of the present invention, there is provided an independent platform for executing a Web-based simulation using one physical server according to an embodiment of the present invention. The independent platform includes: virtualization computing means for efficiently managing middleware running in a virtualized resource, An integrated operating environment control unit 101; A computational science module management unit 102 for storing and managing a plurality of computational science modules necessary for executing a simulation and configuring a simulation execution environment interface; A calculation resource management unit 103 for managing input / output, calculation resources, and execution tasks of data related to the simulation execution; A web GUI service provider 104 for configuring a workflow based on a web graphical user interface (GUI); A database 105 for storing data necessary for operating the independent platform and executing the simulation; And a calculation resource (106) for executing the simulation.

본 발명에 따른 하나의 물리적 서버를 이용한 웹 기반 시뮬레이션 실행을 위한 독립 플랫폼에 의하면, 물리, 화학, 생명공학, 기계, 우주항공, 토목, 컴퓨터 등 다양한 이공계 분야의 계산과학 시뮬레이션 소프트웨어(SW) 및 콘텐츠를 관리 및 실행할 수 있는 사이버 인프라스트럭처 기반 기술로서 저비용의 차세대 교육ㅇ연구 융합 환경을 제공할 수 있는 효과가 있다.According to the independent platform for web-based simulation execution using one physical server according to the present invention, the computational science simulation software (SW) and the contents of various science and engineering fields such as physics, chemistry, biotechnology, It is possible to provide a low-cost next-generation education and research convergence environment as a cyber-infrastructure-based technology capable of managing and executing information.

또한, 하나의 물리적 서버를 이용한 웹 기반 시뮬레이션 실행을 위한 독립 플랫폼에 의하면, 슈퍼컴퓨터와 같은 고가의 장비나 기술적 어려움이 없이 누구나 접근 가능하고 또한 공개된 계산과학 모듈(module)들을 웹상에서 시뮬레이션 프로그램 및 콘텐츠를 구현할 수 있는 다운사이즈된 실행 환경을 구축할 수 있기 때문에, 저비용으로 높은 신뢰도를 나타내므로 기술적이나 산업적인 면에서 효용 가치가 크다. 특히 슈퍼컴퓨터나 고성능 컴퓨터를 구축하기에는 많은 비용과 자원이 소요되므로 저렴한 비용에 시뮬레이션 시스템 구축을 필요로 하는 교육기관이나 연구소, 기업에게는 기회 가치가 매우 큰 효과가 있다.In addition, according to the standalone platform for web-based simulation execution using one physical server, it is possible to use publicly available calculation science modules, which can be accessed by anyone without expensive equipment such as supercomputer or technical difficulties, Since it is possible to construct a downsized execution environment capable of implementing contents, it shows a high reliability at a low cost, and thus has a great utility value in technical and industrial aspects. In particular, it takes a great deal of money and resources to construct a supercomputer or a high-performance computer. Therefore, the value of opportunity is very significant for educational institutions, research institutes, and companies that need to build a simulation system at low cost.

또한, 하나의 물리적 서버를 이용한 웹 기반 시뮬레이션 실행을 위한 독립 플랫폼에 의하면, 컴포넌트 상호 연동 상의 확장성과 범용성을 가진 컴포넌트와 계산자원의 분배와 실행 작업을 효율적으로 관리 할 수 있는 컴포넌트가 연동된 웹 GUI((Web Graphical User Interface)기반 시뮬레이션 실행 플랫폼을 제공하는 효과가 있다.In addition, according to the independent platform for web-based simulation execution using one physical server, a component having scalability and versatility on the inter-component interoperability, a web GUI having a component capable of efficiently managing the distribution and execution task of the computational resource, (Web Graphical User Interface) based simulation execution platform.

또한, 하나의 물리적 서버를 이용한 웹 기반 시뮬레이션 실행을 위한 독립 플랫폼에 의하면, 가상화 기술에 기반한 유휴 컴퓨팅자원의 클러스터링을 통한 HPC 파워를 제공한 웹 플랫폼 기술을 제공할 수 있다.
In addition, according to the independent platform for web-based simulation execution using one physical server, it is possible to provide web platform technology that provides HPC power through clustering of idle computing resources based on virtualization technology.

도 1은 본 발명의 일 실시예에 따른 하나의 물리적 서버를 이용한 웹 기반 시뮬레이션 실행을 위한 독립 플랫폼을 포함하는 전체 구성도.
도 2는 도 1의 각 구성요소의 상세 구성도.
도 3은 본 발명의 일 실시예에 따른 독립 플랫폼에 적용된 KVM의 가상화 구조에 대한 도면.
도 4는 본 발명의 일 실시예에 따른 독립 플랫폼에서, 서버 자원이 각 가상머신으로 할당된 것을 나타낸 도면.
BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is an overall configuration diagram including an independent platform for web-based simulation execution using one physical server according to an embodiment of the present invention; FIG.
Fig. 2 is a detailed configuration diagram of each component of Fig. 1; Fig.
FIG. 3 is a diagram illustrating a virtualization structure of a KVM applied to an independent platform according to an embodiment of the present invention; FIG.
FIG. 4 is a diagram illustrating allocation of server resources to each virtual machine in an independent platform according to an embodiment of the present invention; FIG.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다. 그러나 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야한다.While the invention is susceptible to various modifications and alternative forms, specific embodiments thereof are shown by way of example in the drawings and will herein be described in detail. It is to be understood, however, that the invention is not to be limited to the specific embodiments, but includes all modifications, equivalents, and alternatives falling within the spirit and scope of the invention.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다.It is to be understood that when an element is referred to as being "connected" or "connected" to another element, it may be directly connected or connected to the other element, .

반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.On the other hand, when an element is referred to as being "directly connected" or "directly connected" to another element, it should be understood that there are no other elements in between.

본 명세서에서 사용되는 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 공정, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 공정, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. The singular expressions include plural expressions unless the context clearly dictates otherwise. In the present application, the term "comprises" or "having ", etc. is intended to specify the presence of stated features, integers, steps, operations, elements, parts, or combinations thereof, And does not preclude the presence or addition of one or more other features, integers, integers, steps, operations, elements, components, or combinations thereof.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미가 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미가 있는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless otherwise defined, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. Terms such as those defined in commonly used dictionaries are to be interpreted as having a meaning consistent with the meaning in the context of the relevant art and are to be construed as ideal or overly formal in meaning unless explicitly defined in the present application Do not.

이하, 첨부된 도면을 참조하여 본 발명을 더욱 상세하게 설명한다. 이에 앞서, 본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정하여 해석되어서는 아니 되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위해 용어의 개념을 적절하게 정의할 수 있다는 원칙에 입각하여, 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다. 또한, 사용되는 기술 용어 및 과학 용어에 있어서 다른 정의가 없다면, 이 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 통상적으로 이해하고 있는 의미를 가지며, 하기의 설명 및 첨부 도면에서 본 발명의 요지를 불필요하게 흐릴 수 있는 공지 기능 및 구성에 대한 설명은 생략한다. 다음에 소개되는 도면들은 당업자에게 본 발명의 사상이 충분히 전달될 수 있도록 하기 위해 예로서 제공되는 것이다. 따라서, 본 발명은 이하 제시되는 도면들에 한정되지 않고 다른 형태로 구체화될 수도 있다. 또한, 명세서 전반에 걸쳐서 동일한 참조번호들은 동일한 구성요소들을 나타낸다. 도면들 중 동일한 구성요소들은 가능한 한 어느 곳에서든지 동일한 부호들로 나타내고 있음에 유의해야 한다. Hereinafter, the present invention will be described in more detail with reference to the accompanying drawings. Prior to this, terms and words used in the present specification and claims should not be construed as limited to ordinary or dictionary terms, and the inventor should appropriately interpret the concept of the term appropriately in order to describe its own invention in the best way. The present invention should be construed in accordance with the meaning and concept consistent with the technical idea of the present invention. Further, it is to be understood that, unless otherwise defined, technical terms and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. Descriptions of known functions and configurations that may be unnecessarily blurred are omitted. The following drawings are provided by way of example so that those skilled in the art can fully understand the spirit of the present invention. Therefore, the present invention is not limited to the following drawings, but may be embodied in other forms. In addition, like reference numerals designate like elements throughout the specification. It is to be noted that the same elements among the drawings are denoted by the same reference numerals whenever possible.

설명에 앞서, 본 명세서( 및 특허청구범위)에서 사용되는 용어에 대해 간단히 설명하도록 한다.Prior to the description, the terms used in this specification (and claims) will be briefly described.

'플랫폼'이란, 컴퓨터 시스템의 기본이 되는 특정 프로세서 모델과 하나의 컴퓨터 시스템을 바탕으로 하는 운영체제를 말한다."Platform" refers to an operating system based on a specific processor model and a computer system that are the basis of a computer system.

'미들웨어'는 병렬라이브러리, 모니터링 툴, 큐잉 시스템 등 클러스터 관련 소프트웨어를 지칭한다. 먼저 병렬라이브러리는 무수히 많이 있으며 이들 중 원하는 라이브러리를 하나 또는 여러 개 선택해서 설치할 수 있다. 모니터링 툴과 큐잉 시스템 역시 다수가 공개되어 있으며 상용 툴들도 공개되어 있다.'Middleware' refers to cluster-related software such as parallel libraries, monitoring tools, and queuing systems. First of all, there are a lot of parallel libraries, and you can choose one or more of them. Many monitoring and queuing systems are also available and commercial tools are also available.

'스키마'는 데이터를 특성에 의하여 체계적으로 저장하도록 설계한 구조를 의미한다. 계산과학 모듈 메타정보 스키마는, 각 계산과학 모듈에 있어서, 데이터베이스 구조와 제약 조건을 기술한 메타데이터(Meta Data)의 집합을 말한다.'Schema' means a structure designed to systematically store data by characteristics. Computational Science Module Meta information schema refers to a set of meta data describing the database structure and constraints for each computational science module.

본 발명은 계산과학 시뮬레이션 클러스터링 지원 독립형 실행 플랫폼에 관한 것으로, 이공계 시뮬레이션 소프트웨어(SW) 및 콘텐츠를 관리, 실행할 수 있는 사이버 인프라스트럭처 기반의 차세대 교육˙연구 융합 환경 제공을 목적으로 하며, 컴포넌트 상호 연동 상의 확장성과 범용성을 가진 컴포넌트와 계산자원의 분배와 실행 작업을 효율적으로 관리 할 수 있는 컴포넌트가 연동된 웹 그래픽사용자인터페이스(GUI : Graphical User Interface) 기반 시뮬레이션 실행 플랫폼 개발 관련 기술에 관한 것이다.
The present invention relates to a standalone execution platform supporting computational science simulation clustering, and aims at providing a next generation education and research convergence environment based on a cyber infrastructure capable of managing and executing science simulation software (SW) and contents, The present invention relates to a technique for developing a simulation execution platform based on a graphical user interface (GUI) in which a component capable of scalability and generalization and a component capable of efficiently managing the distribution and execution of calculation resources are linked.

도 1은 본 발명의 일 실시예에 따른 하나의 물리적 서버를 이용한 웹 기반 시뮬레이션 실행을 위한 독립 플랫폼을 포함하는 전체 구성도이고, 도 2는 도 1의 각 구성요소의 상세 구성도이다.FIG. 1 is an overall configuration diagram including an independent platform for web-based simulation execution using one physical server according to an embodiment of the present invention, and FIG. 2 is a detailed configuration diagram of each component of FIG.

도 1에 도시된 바와 같이, 하나의 물리적 서버를 이용한 웹 기반 시뮬레이션 실행을 위한 독립 플랫폼(100)은, 가상화 컴퓨팅 통합 운영 환경 제어부(101), 계산과학모듈 관리부(102), 계산 자원 관리부(103), 웹 GUI 서비스 제공부(104), 데이터베이스(105), 및 계산 자원(106)을 포함한다.1, an independent platform 100 for executing web-based simulation using one physical server includes a virtualization computing integrated operating environment control unit 101, a computational science module management unit 102, a computation resource management unit 103 ), A Web GUI service provider 104, a database 105, and a calculation resource 106.

상기 가상화 컴퓨팅 통합 운영 환경 제어부(101)는 가상화된 자원 내에서 운영 중인 미들웨어들을 관리한다.The virtualization computing integrated operating environment control unit 101 manages middleware operating in virtualized resources.

상기 가상화 컴퓨팅 통합 운영 환경 제어부(101)는, 전체 시스템의 자원을 모니터링하기 위한 시스템 통합 자원 모니터링부(201), 가상화 시스템의 자원을 모니터링하기 위한 가상화 시스템 자원 모니터링부(202), 가상화 시스템 내의 시뮬레이션 실행을 위한 미들웨어들의 실행을 제어 및 관리하고, 웹 GUI 서비스 실행을 제어 및 관리하기 위한 가상화 시스템 내 미들웨어 실행 제어 관리부(203), 상기 계산 자원을 모니터링하기 위한 계산 자원 모니터링부(204), 및 상기 시뮬레이션의 병렬 처리를 위한 상기 계산 자원을 제어하기 위한 계산 자원 제어부(205)를 포함한다.The virtualization computing integrated operating environment control unit 101 includes a system integration resource monitoring unit 201 for monitoring resources of the entire system, a virtualization system resource monitoring unit 202 for monitoring resources of the virtualization system, A middleware execution control management unit 203 for controlling and managing the execution of middleware for execution and controlling and managing execution of the web GUI service, a calculation resource monitoring unit 204 for monitoring the calculation resource, And a calculation resource control unit 205 for controlling the calculation resources for parallel processing of the simulation.

상기 계산과학모듈 관리부(102)는 시뮬레이션 실행에 필요한 다수의 계산과학 모듈들을 저장 및 관리하고 시뮬레이션 실행 환경 인터페이스를 구성한다.The computational science module management unit 102 stores and manages a plurality of computational science modules required for execution of a simulation and constitutes a simulation execution environment interface.

상기 계산과학모듈 관리부(102)는 상기 다수의 계산과학 모듈의 메타정보 스키마를 정의하기 위한 계산과학 모듈 메타정보 스키마 정의부(211), 상기 다수의 계산과학 모듈의 각 소프트웨어의 스키마 정보를 관리하기 위한 소프트웨어(SW) 스키마 정보 관리부(212), 및 상기 다수의 계산과학 모듈들의 시뮬레이션에 대한 인터페이스를 제공하기 위한 시뮬레이션 수행 인터페이스 제공부(213)를 포함한다.
The calculation science module management unit 102 includes a calculation science module module meta information schema definition unit 211 for defining a meta information schema of the plurality of calculation science modules, A software (SW) schema information management unit (212) for providing a plurality of calculation science modules, and a simulation execution interface providing unit (213) for providing an interface for simulation of the plurality of calculation science modules.

상기 계산 자원 관리부(103)는 상기 시뮬레이션 실행과 관련된 데이터의 입출력, 계산 자원 및 실행 작업을 관리한다.The calculation resource management unit 103 manages input / output, calculation resources, and execution tasks of data related to the simulation execution.

계산과학 모듈의 실행 제어를 위한 관리는 매개변수를 수신하는 입력포트와 실행 결과 출력 시 폴더를 지정하는 출력포트 관리로 구성된다. 입력포트에 전달되는 매개변수 형태는 파일, 문자열, 코드 선택, 전달인수 여부 선택의 형태로 구성되며 출력포트는 결과 파일을 저장하기 위한 폴더 경로로 구성된다. 각각의 입출력 포트는 사용자 GUI에서 선택되어 사용되기 위한 명칭을 부여 한다. Management for execution control of the computational science module consists of an input port for receiving parameters and an output port management for specifying a folder for output of execution results. The type of parameters to be sent to the input port consists of a file, a string, a code selection, and a choice of whether or not to accept a transfer argument. The output port consists of a folder path for storing the result file. Each input / output port is assigned a name to be selected and used in the user GUI.

계산과학 모듈은 각각의 입출력 포트의 요구 조건에 부합하는 모듈을 연결 하여 실험 단위의 워크플로우를 구성할 수 있다. 실행 대상 모듈이 요구하는 입력포트와 이전 실행 모듈의 출력포트 형태가 동일한 경우 또는 실행 대상 모듈의 출력포트와 후처리 모듈의 입력포트 형태가 동일한 경우 모듈의 입출력 정보와 실행 순서 정보는 데이터베이스(105)에 저장 및 처리되며 계산 자원 관리부(103)에서는 상기 정보를 이용하여 순차적인 모듈 실행을 제어한다.The computational science module can construct the workflow of the experimental unit by connecting the modules that meet the requirements of each I / O port. When the input port requested by the execution target module is the same as the output port type of the previous execution module, or when the output port of the execution target module is the same as the input port type of the postprocessing module, the input / And the calculation resource management unit 103 controls sequential module execution using the information.

상기 작업의 제출, 실행, 완료 및 작업의 상태를 확인하기 위한 실행로그 관리부(221), 시스템 자원을 나누어 슬롯별로 할당하기 위한 서버 자원 관리부(222), 다수의 가상머신으로 자원을 할당하기 위한 가상화 자원 관리부(223), 상기 시뮬레이션 실행에 있어서 병렬로 작업을 실행하기 위한 시뮬레이션 병렬 실행 처리부(224), 및 고성능을 제공하기 위해 상기 서버를 하나의 시스템처럼 관리 및 운영하기 위한 서버 클러스터링부(225)을 포함한다. An execution log management unit 221 for confirming the status of submission, execution, completion, and operation of the job, a server resource management unit 222 for allocating system resources on a slot-by-slot basis, A resource management unit 223, a simulation parallel execution processing unit 224 for executing tasks in parallel in the execution of the simulation, and a server clustering unit 225 for managing and operating the servers as one system to provide high performance, .

계산 자원 관리부(103)는, HTCondor를 사용하는 것을 특징으로 한다.The calculation resource managing unit 103 is characterized by using HTCondor.

HTCondor는 계산 집약적인 작업의 대용량 분산 병렬 처리를 위한 오픈 소스의 고-처리량 컴퓨팅 소프트웨어 프레임워크이다. HTCondor는 University of Wisconsin-Madison의 HTCondor 팀에 의해 개발되었으며 무료로 사용할 수 있다. HTCondor 는 종래의 Torque/Maui 와 같은 작업관리 기능 및 다양한 부가기능을 제공하며 현재도 업데이트되는 최신의 작업관리 기술로서, 아파치 소프트웨어 재단에서 개발된 소프트웨어라는 것을 명시하면 사용 가능하며, 최근 2016년 9월 29일 v 8.5.7이 배포된 상태이다.
HTCondor is an open source, high-throughput computing software framework for large-scale distributed parallelism of computationally intensive operations. HTCondor was developed by the HTCondor team at the University of Wisconsin-Madison and is available for free. HTCondor is the latest work management technology that provides work management functions such as Torque / Maui and various add-ons that are currently being updated. It can be used if it is stated that it is software developed by Apache Software Foundation. 29 days v 8.5.7 has been released.

본 발명에 따른 독립 플랫폼은, HTCondor를 이용하여 작업을 제출하고 스케쥴러를 거쳐 계산자원에 할당되어 작업의 결과를 얻어내는 것을 특징으로 한다.The independent platform according to the present invention is characterized in that a task is submitted using an HTCondor and assigned to a calculation resource via a scheduler to obtain a result of a task.

또한, HTCondor를 이용하여 병렬 처리(Parallel processing)를 지원한다.In addition, it supports parallel processing using HTCondor.

HTCondor를 이용한 시뮬레이션 실행은 사용자에 의해 예상되는 처리 규모에 따라 CPU 할당을 요청 받으며 HTCondor Central Manager는 가용 자원 범위내에서 순차처리 되며 이러한 실행 방법은 요청되는 할당 자원을 기준으로 Single Universe와 Parallel Universe로 구분된다.The execution of the simulation using HTCondor is requested to allocate the CPU according to the expected processing size by the user. The HTCondor Central Manager is sequentially processed within the range of available resources. This execution method is divided into Single Universe and Parallel Universe do.

이 중 Parallel Universe는 다수의 프로세스에서 동시에 실행되는 작업을 지원한다. Parallel Universe 작업에서는 Open MPI, MPICH등 다양한 MPI 구현 환경에서 실행이 가능하다.Of these, Parallel Universe supports operations that are executed simultaneously in multiple processes. Parallel Universe operation can be executed in various MPI implementation environments such as Open MPI and MPICH.

Parallel universe 작업을 실행하기 위해서는 계산자원(Execute Node)에서 dedicated된 작업을 실행할 수 있도록 설정을 해야 한다. 설정을 마친 후 작업의 실행 스크립트에 각 시뮬레이션에 맞는 실행 구문을 넣어줘야 한다. HTCondor에서는 Open MPI와 MPICH에 대한 실행 스크립트를 제공하여 각 시뮬레이션에 맞게 환경변수와 옵션만 변경해주면 실행이 가능하다. 작업의 실행은 condor_submit 명령어로 해당하는 작업의 실행 스크립트를 지정해주어 실행한다. 또한 condor_q 명령어로 현재 작업 큐의 상태를 확인 할 수 있으며, condor_status 명령어로 작업의 실행 상태를 확인 할 수 있다.To execute a Parallel universe task, you must configure it so that it can execute a dedicated task from the execution resource (Execute Node). After completing the setup, you need to put the execution syntax for each simulation into the execution script of the task. HTCondor provides run scripts for Open MPI and MPICH and can be executed by changing only environment variables and options for each simulation. The execution of the job is executed by specifying the execution script of the corresponding job with the condor_submit command. You can also check the status of the current job queue with the condor_q command, and check the execution status of the job with the condor_status command.

또한, 현재의 계산자원에서 외부의 계산자원이 추가되었을 경우 HTCondor에서는 계산자원을 추가하는 것이 가능하다.In addition, it is possible to add computational resources in HTCondor when an external computational resource is added from the current computational resource.

우선 내부 네트워크망으로 연결되어 있을 경우 서버에 HTCondor를 설치후 Central Manager 설정을 현재 작동하고 있는 Central Manager 서버로 설정한 후 condor_master 명령어를 실행시켜 HTCondor 데몬을 실행시켜주면 간단하게 새로운 서버를 추가할 수 있다. 한편, 내부망의 네트워크로 연결되어 있지 않은 경우 HTCondor의 Flocking 기능을 이용하여 계산자원으로 설정을 할 수 있다.First, if you are connected to the internal network, you can add a new server simply by installing HTCondor on the server, setting the Central Manager configuration to the currently running Central Manager server, and running the condor_master command to launch the HTCondor daemon . On the other hand, if the network is not connected to the internal network, it can be set as a calculation resource by using the Flocking function of HTCondor.

플로킹(Flocking)기능이란 HTCondor의 가장 큰 장점중의 하나로 클러스터 간 작업 연동을 가능하게 해주는 기능이다.Flocking is one of the biggest advantages of HTCondor, which enables interworking between clusters.

예를 들어, A.condor 라는 HTCondor pool과 B.condor라는 HTCondor pool 이 존재할 경우 A에 작업을 제출했더라도 B에 자원이 남아 있을 경우 B로 작업이 전달되어 작업을 실행해줄 수 있다.
For example, if there is an HTCondor pool named A.condor and an HTCondor pool named B.condor, even if you submit a job to A, if the resource remains in B, the job is transferred to B and can execute the job.

상기 서버 클러스터링부(225)는 일예로, HPC 클러스터로 구현된다. HPC 클러스터는 고성능의 계산능력을 제공하기 위한 목적으로 사용되며, 주로 과학계산용으로 활용가치가 높다. HPC 클러스터를 구성하는 모든 컴퓨터들은 네트워크에 연결되어 있어서 상호간에 통신이 가능하므로 다수의 프로세서가 협동적으로 문제를 풀 수 있는 환경을 제공하게 된다. 그러나 이 기반을 이용하여 문제를 병렬로 푸는 것은 전적으로 프로그램 수준에서 이루어진다. 따라서 클러스터 구축뿐만 아니라 프로그램 병렬화가 같이 고려되어야 한다.The server clustering unit 225 is implemented as an HPC cluster. HPC clusters are used for the purpose of providing high performance computing power, and they are mainly used for scientific computing. All of the computers that make up the HPC cluster are connected to the network so that they can communicate with each other, so that multiple processors can cooperatively solve the problem. However, using this base to solve problems in parallel is entirely at the program level. Therefore, not only cluster construction but also program parallelization should be considered.

상기 웹 GUI 서비스 제공부(104)는 웹 그래픽사용자인터페이스(GUI) 기반으로 워크플로우를 구성한다.The web GUI service provider 104 configures a workflow based on a web graphic user interface (GUI).

시뮬레이션을 위한 각 워크플로우의 GUI를 제공하기 위한 워크플로우 GUI 제공부(231), 상기 시뮬레이션 통계를 분석하는 시뮬레이션 통계 분석부(232), 상기 시뮬레이션 결과를 시각화하여 출력하기 위한 시뮬레이션 결과 가시화부(233), 및 상기 계산과학모듈 관리부(102) 및 상기 계산 자원 관리부(103)와 연동하기 위한 연동부(234)를 포함한다.A workflow GUI providing unit 231 for providing a GUI of each workflow for simulation, a simulation statistical analyzing unit 232 for analyzing the simulation statistics, a simulation result visualizing unit 233 for visualizing and outputting the simulation result, And an interlocking unit 234 for interlocking with the calculation science module management unit 102 and the calculation resource management unit 103.

상기 데이터베이스(105)는 상기 독립 플랫폼을 운용하고 상기 시뮬레이션을 실행하는데 필요한 데이터를 저장하고 있다.The database 105 stores data necessary for operating the independent platform and executing the simulation.

상기 계산 자원(106)은 상기 시뮬레이션 실행을 위한 자원으로, 실행 가상머신(Execution VM)에 해당한다.
The calculation resource 106 is a resource for executing the simulation, and corresponds to an execution virtual machine (Execution VM).

도 1에 도시된 바와 같이, 사용자 단말(110, 120, 130)은 네트워크를 통해 상기 시뮬레이션 실행을 위한 독립 플랫폼(100)에 접속하여 시뮬레이션 실행 서비스를 제공받는다.As shown in FIG. 1, the user terminals 110, 120, and 130 access the independent platform 100 for executing the simulation through a network and are provided with a simulation execution service.

여기서, 상기 네트워크는 유선 및 무선 등과 같은 그 통신 양태를 가리지 않고 구성될 수 있으며, 근거리 통신망(LAN: Local Area Network), 도시권 통신망(MAN: Metropolitan Area Network), 광역 통신망(WAN: Wide Area Network) 등 다양한 통신망으로 구성될 수 있다. 바람직하게는, 본 발명에서 말하는 통신 네트워크는 공지의 월드와이드웹(WWW: World Wide Web)일 수 있다.Here, the network may be configured without regard to its communication mode such as wired and wireless, and may be a LAN (Local Area Network), a Metropolitan Area Network (MAN), a Wide Area Network (WAN) And the like. Preferably, the communication network referred to in the present invention may be the well-known World Wide Web (WWW).

상기 사용자 단말(110, 120, 130)은 계산과학 시뮬레이션을 실행하기 위한 자가 통신 네트워크를 통하여 상기 독립 플랫폼(100)에 접속한 후 통신할 수 있도록 하는 기능을 포함하는 디지털 기기로서, 개인용 컴퓨터(예를 들어, 데스크탑 컴퓨터, 노트북 컴퓨터 등), 워크스테이션, PDA, 웹 패드, 이동 전화기 등과 같이 메모리 수단을 구비하고 마이크로 프로세서를 탑재하여 연산 능력을 갖춘 디지털 기기라면 얼마든지 본 발명에 따른 사용자 단말(110, 120, 130)로서 채택될 수 있다.
Wherein the user terminal (110, 120, 130) is a digital device including a function for allowing the user terminal (110, 120, 130) to access the independent platform (100) Such as a desktop computer, a notebook computer, etc., a workstation, a PDA, a web pad, a mobile phone, and the like, and a computing device equipped with a microprocessor, , 120, 130).

한편, 상기 시뮬레이션 실행을 위한 독립 플랫폼(100)은 고유식별정보를 이용하여 회원인증을 거친 사용자 단말(110, 120, 130)에게 상기 시뮬레이션 실행 서비스를 제공할 수 있다.Meanwhile, the independent platform 100 for executing the simulation can provide the simulation execution service to the user terminals 110, 120, and 130 that have been authenticated using the unique identification information.

상기 고유식별정보는 특정 IP, 공인인증서, 아이디(ID) 와 패스워드(password), 맥어드레스(MAC(media access control) address), 국제모바일기기식별코드(IMEI, International Mobile Station Equipment Identity), 고유식별번호(UDID: User Device IDentification), 범용고유식별자(UUID: Universally Unique IDentifier) 및 전화번호 등이 될 수 있다.The unique identification information includes at least one of a specific IP, a public certificate, an ID and a password, a MAC address, an International Mobile Station Equipment Identity (IMEI) A user device identification (UDID), a universally unique identifier (UUID), and a telephone number.

예를 들어, 컴퓨터의 경우, 특정 IP, 공인인증서, 아이디(ID) 와 패스워드(password), 맥어드레스(MAC address) 등을 이용해 회원인증을 수행할 수 있고, 모바일기기 및 스마트기기의 경우, 맥어드레스(MAC(media access control) address), 국제모바일기기식별코드(IMEI: International Mobile Station Equipment Identity), 고유식별번호(UDID: User Device IDentification), 범용고유식별자(UUID: Universally Unique IDentifier) 및 전화번호 등을 이용해 회원인증을 수행할 수 있다For example, in the case of a computer, member authentication can be performed using a specific IP, a public certificate, an ID and a password, a MAC address, etc. In the case of a mobile device and a smart device, (MAC) address, an International Mobile Station Equipment Identity (IMEI), a User Device IDentification (UDID), a Universally Unique IDentifier (UUID) To perform member authentication

맥어드레스(MAC(media access control) address)는 네트워크 구조에서 MAC 계층에서 네트워크 장치가 갖는 주소로서 보통 네트워크 카드의 ROM에 저장되어 있다.A MAC address (media access control) address is an address of a network device in the MAC layer in a network structure, and is usually stored in the ROM of the network card.

고유식별번호(UDID: User Device IDentification)는 사용자의 디바이스를 식별할 수 있는 식별자 이다. 일종의 시리얼넘버인 셈이다.A User Device IDentification (UDID) is an identifier for identifying a user device. It is a kind of serial number.

범용고유식별자(UUID: Universally Unique IDentifier)는 인터넷상에서 객체나 실체를 식별하는 데 사용되는 128비트 숫자를 말한다. 공간과 시간(약 3400년까지)의 조합을 통해 구성되는 거의 유일하게 사용할 수 있는 식별자로서, 극히 단시간의 객체에서부터 영구적인 객체 식별에 이르기까지 다양한 목적으로 사용된다. 인증 기관의 등록 절차는 없고, 다만 범용 단일 식별자 생성 프로그램의 유일한 식별 숫자만 필요하다. 예를 들어, 어떤 제품의 맥어드레스를 특정 서버에 저장하게 되면 개인정보 유출 등의 문제가 발생될 수 있기 때문에, 맥어드레스를 대체하여 저장하기 위한 식별자로 사용 할 수 있다.A Universally Unique Identifier (UUID) is a 128-bit number used to identify an object or entity on the Internet. It is a nearly uniquely identifiable identifier made up of a combination of space and time (up to about 3400 years), and is used for a variety of purposes ranging from extremely short time objects to permanent object identification. There is no registration procedure for certification bodies, but only a unique identification number of the generic single identifier generation program is required. For example, if a certain product's MAC address is stored in a specific server, a problem such as leakage of personal information may occur, so that it can be used as an identifier for storing and storing a MAC address.

위에서 여러 가지 고유식별정보(식별자)에 대하여 설명하였으며, 하나의 기기가 다수의 고유식별정보를 갖을 수 있다.
Various unique identification information (identifiers) have been described above, and one device can have a plurality of unique identification information.

상기 시뮬레이션 실행을 위한 독립 플랫폼(100)은, 네트워크를 통해 접속한 상기 사용자 단말(110, 120, 130)로 웹 GUI를 제공하며, 상기 사용자 단말(110, 120, 130)의 선택에 따라, 다수의 계산과학모듈들 중, 필요한 계산과학모듈이 선택되고, 상기 사용자 단말(110, 120, 130)의 선택에 따라, 상기 선택된 계산과학모듈의 실행 순서 및 방법이 설정되고, 상기 설정에 따라 상기 계산 자원을 사용하여 시뮬레이션이 실행되고, 상기 시뮬레이션이 실행된 이후, 상기 시뮬레이션의 결과를 가시화하여 출력해준다.
The independent platform 100 for executing the simulation provides a web GUI to the user terminals 110, 120, and 130 connected through a network. The independent platform 100 provides a web GUI to the user terminals 110, 120, Wherein a required computational science module is selected and an execution order and a method of the selected computational science module are set according to the selection of the user terminal (110, 120, 130) The simulation is executed using the resources, and after the simulation is executed, the result of the simulation is visualized and output.

도 3은 본 발명의 일 실시예에 따른 독립 플랫폼에 적용된 KVM의 가상화 구조에 대한 도면이다.3 is a diagram illustrating a virtualization structure of a KVM applied to an independent platform according to an embodiment of the present invention.

상기 독립 플랫폼을 지원하는 물리적 서버는, 커널 기반 가상 시스템(KVM: Kernel based Virtual Machine, 이하 KVM이라 함)을 사용하여 가상화될 수 있다. KVM은 Linux 커널을 하이퍼바이저로 전환하는 가상화 구조이다. The physical server supporting the independent platform may be virtualized using a kernel based virtual machine (KVM). KVM is a virtualization architecture that turns the Linux kernel into a hypervisor.

상기 KVM은 가상화 컴퓨팅 통합 운영 환경 제어부(101)에 의해 모니터링 및 제어되며, GNU 약소 일반 공중 사용 허가서 (GNU LGPL: Lesser General Public License, LGPL) 코드를 사용하고 있음을 명시하면 라이센스 문제가 생기지 않는다.The KVM is monitored and controlled by the virtualization computing integrated operating environment control unit 101, and if it is specified that the GNU Lesser General Public License (LGPL) code is used, there is no license problem.

도 3에 도시된 바와 같이, KVM의 가상화 구조는, 맨 아래에 하드웨어 레이어(Hardware Layer), 상기 하드웨어 레이어 상에 가상화 레이어(Virtualization Layer), 및 상기 가상화 레이어 상에 가상머신 레이어(Virtual Machine Layer)를 포함한다.3, the virtualization structure of the KVM includes a hardware layer at the bottom, a virtualization layer on the hardware layer, and a virtual machine layer on the virtualization layer. .

상기 하드웨어 레이어는, 물리적 하드웨어를 의미하는데, 디스크, LAN, USB, BMC, IPMI, ACPI 등의 IO 플랫폼 디바이스와, 메모리 및 중앙처리장치(CPU)를 포함한다.The hardware layer refers to physical hardware, and includes IO platform devices such as disk, LAN, USB, BMC, IPMI, and ACPI, and a memory and a central processing unit (CPU).

상기 가상화 레이어는, 리눅스 OS 커널 또는 호스트 OS(Linux OS Kernel/Host OS) 에 Physical Drivers 및 KVM 하이퍼바이저 커널 모듈(KVM Hypervisor Kernel Module)을 포함하며, 상기 OS 상에 가상화된 하드웨어(Virtualized Hardware)가 위치한다. 상기 가상화된 하드웨어 상에 하이퍼바이저 매니지먼트(Hypervisor Management)가 있으며, 상기 하이퍼바이저 매니지먼트 상에 가상머신 매니지먼트(VM Management)가 위치한다.The virtualization layer includes Physical Drivers and a KVM Hypervisor Kernel Module in a Linux OS kernel or a host OS (Linux OS Kernel / Host OS), and virtualized hardware on the OS Located. There is a hypervisor management on the virtualized hardware, and a virtual machine management (VM Management) is located on the hypervisor management.

상기 가상머신 레이어에는, 각 가상머신의 OS 커널 상에 어플리케이션들(Applications)이 설치된다.In the virtual machine layer, applications are installed on the OS kernel of each virtual machine.

상기 리눅스 OS 커널 또는 호스트 OS 상의 Physical Drivers 와 상기 가상화된 하드웨어 사이에 입출력 경로(IO Path)가 생성되며, 상기 가상머신 레이어의 각 OS 커널 상에 IO 시스템들과 상기 가상화된 하드웨어 사이에도 입출력 경로(IO Path)가 생성된다.
An input / output path (IO Path) is created between the physical OS and the virtualized hardware on the Linux OS kernel or the host OS, and between the IO systems and the virtualized hardware on the OS kernel of the virtual machine layer, IO Path) is generated.

도 4는 본 발명의 일 실시예에 따른 독립 플랫폼에서, 서버 자원이 각 가상머신으로 할당된 것을 나타낸 도면이다.4 is a diagram illustrating allocation of server resources to each virtual machine in an independent platform according to an embodiment of the present invention.

상기 가상화 컴퓨팅 통합 운영 환경 제어부(101)는, 상기 하나의 물리적 서버(401)를 웹 서비스 가상머신(Web Service VM)(402), 데이터베이스 가상머신(DB VM)(403), 관리 가상머신(Head VM)(404), 및 실행 가상머신(Execute VM)(405)으로 나누어 제어하고, 상기 웹서비스 가상머신(402), 상기 데이터베이스 가상머신(403), 상기 관리 가상머신(404) 및 상기 실행 가상머신(404) 각각에 대하여, 중앙처리장치(CPU) 코어의 개수, 하드디스크드라이브(HDD) 용량, 및 메모리(Memory) 용량을 할당한다.The virtualization computing integrated operating environment control unit 101 controls the one physical server 401 to function as a web service virtual machine 402, a database virtual machine (DB VM) 403, a management virtual machine (VM) 404 and an execution VM 405. The Web service virtual machine 402, the database virtual machine 403, the management virtual machine 404 and the execution virtual For each machine 404, the number of CPU cores, the hard disk drive (HDD) capacity, and the memory capacity are allocated.

일예로, 물리적 서버의 서버자원은 CPU가 48 코어(Core)를 포함하고, HDD는 4TB가 2개, SDD(Solid State Drive)는 240GB이고, 메모리는 16GB가 8개로 이루어져 있다.For example, the server resources of the physical server include 48 cores of CPU, 2 HDDs of 4TB, 240GB of SDD (Solid State Drive) and 8 memory of 16GB.

상기 웹서비스 가상머신(402)에는 CPU 4 Core, HDD 180 GB, 메모리 8 GB가 할당되어 있으며, 상기 데이터베이스 가상머신(403)에는 CPU 4 Core, HDD 180 GB, 메모리 8 GB가 할당되어 있으며, 상기 관리 가상머신(404)에는 CPU 4 Core, HDD 4 TB, 메모리 8 GB가 할당되어 있으며, 상기 실행 가상머신(404)에는 CPU 32 Core, HDD 1.6 TB, 메모리 104 GB가 할당되어 있다.CPU 4 Core, HDD 180 GB and memory 8 GB are allocated to the web service virtual machine 402. CPU 4 Core, HDD 180 GB and memory 8 GB are allocated to the database virtual machine 403, CPU 4 Core, HDD 4 TB and memory 8 GB are allocated to the management virtual machine 404, and CPU 32 Core, HDD 1.6 TB, and memory 104 GB are allocated to the execution virtual machine 404.

한편, 상기 계산 자원 관리부(103)는, 시뮬레이션 실행 요청을 수신하면, 상기 실행 가상머신에 할당된 상기 중앙처리장치(CPU) 코어의 개수를 상기 시뮬레이션 실행 요청에 대응하는 각 작업으로 할당한다.On the other hand, when receiving the simulation execution request, the calculation resource management unit 103 allocates the number of the CPU cores allocated to the execution virtual machine to each job corresponding to the simulation execution request.

본 발명은 상기한 실시예에 한정되지 아니하며, 적용범위가 다양함은 물론이고, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 다양한 변형 실시가 가능한 것은 물론이다.
It will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the spirit and scope of the invention as defined by the appended claims.

100: 독립 플랫폼
110, 120, 130: 사용자 단말
101: 가상화 컴퓨팅 통합 운영 환경 제어부
102: 계산과학모듈 관리부
103: 계산 자원 관리부
104: 웹 GUI 서비스 제공부
105: 데이터베이스
106: 계산 자원
201: 시스템 통합 자원 모니터링부
202: 가상화 시스템 자원 모니터링부
203: 가상화 시스템 내 미들웨어 실행 제어 관리부
204; 계산 자원 모니터링부
205: 계산 자원 제어부
211: 계산과학 모듈 메타정보 스키마 정의부
212: 소프트웨어(SW) 스키마 정보 관리부
213: 시뮬레이션 수행 인터페이스 제공부
221: 실행로그 관리부
222: 서버 자원 관리부
223: 가상화 자원 관리부
224: 시뮬레이션 병렬 실행 처리부
225: 서버 클러스터링부
231: 워크플로우 GUI 제공부
232: 시뮬레이션 통계 분석부
233: 시뮬레이션 결과 가시화부
234: 연동부
100: Independent Platform
110, 120, and 130:
101: Virtualized Computing Integrated Operating Environment Control
102: Calculation Science Module Manager
103:
104: Web GUI service provider
105: Database
106: Computational resources
201: system integration resource monitoring unit
202: virtualization system resource monitoring unit
203: Middleware execution control manager in the virtualization system
204; Calculation resource monitoring unit
205: Calculation resource controller
211: calculation science module meta information schema definition unit
212: software (SW) schema information management unit
213: Simulation Interface
221: Execution log management unit
222: Server Resource Management Unit
223: Virtual resource manager
224: Simulation parallel execution processor
225: Server clustering unit
231: Workflow GUI Offering
232: Simulation statistical analysis section
233: Simulation result visualization part
234:

Claims (10)

하나의 물리적 서버를 이용한 웹 기반 시뮬레이션 실행을 위한 독립 플랫폼에 있어서,
가상화된 자원 내에서 운영 중인 미들웨어들을 효율적으로 관리하기 위한 가상화 컴퓨팅 통합 운영 환경 제어부(101);
시뮬레이션 실행에 필요한 다수의 계산과학 모듈을 저장 및 관리하고 시뮬레이션 실행 환경 인터페이스를 구성하기 위한 계산과학모듈 관리부(102);
상기 시뮬레이션 실행과 관련된 데이터의 입출력, 계산 자원 및 실행 작업을 관리하기 위한 계산 자원 관리부(103);
웹 그래픽사용자인터페이스(GUI) 기반으로 워크플로우를 구성하기 위한 웹 GUI 서비스 제공부(104);
상기 독립 플랫폼을 운용하고 상기 시뮬레이션을 실행하는데 필요한 데이터를 저장하고 있는 데이터베이스(105); 및
상기 시뮬레이션 실행을 위한 계산 자원(106)
을 포함하는 하나의 물리적 서버를 이용한 웹 기반 시뮬레이션 실행을 위한 독립 플랫폼.
An independent platform for web based simulation execution using one physical server,
A virtualized computing integrated operating environment control unit 101 for efficiently managing middleware operating in a virtualized resource;
A computational science module management unit 102 for storing and managing a plurality of computational science modules necessary for executing a simulation and configuring a simulation execution environment interface;
A calculation resource management unit 103 for managing input / output, calculation resources, and execution tasks of data related to the simulation execution;
A web GUI service provider 104 for configuring a workflow based on a web graphical user interface (GUI);
A database 105 for storing data necessary for operating the independent platform and executing the simulation; And
The calculation resource 106 for the simulation execution
A standalone platform for running web-based simulations using a single physical server.
제1항에 있어서,
상기 가상화 컴퓨팅 통합 운영 환경 제어부(101)는,
전체 시스템의 자원을 모니터링하기 위한 시스템 통합 자원 모니터링부(201);
가상화 시스템의 자원을 모니터링하기 위한 가상화 시스템 자원 모니터링부(202);
가상화 시스템 내의 시뮬레이션 실행을 위한 미들웨어들의 실행을 제어 및 관리하고, 웹 GUI 서비스 실행을 제어 및 관리하기 위한 가상화 시스템 내 미들웨어 실행 제어 관리부(203);
상기 계산 자원을 모니터링하기 위한 계산 자원 모니터링부(204); 및
상기 시뮬레이션의 병렬 처리를 위한 상기 계산 자원을 제어하기 위한 계산 자원 제어부(205)
를 포함하는 것을 특징으로 하는 하나의 물리적 서버를 이용한 웹 기반 시뮬레이션 실행을 위한 독립 플랫폼.
The method according to claim 1,
The virtualization computing integrated operating environment control unit (101)
A system integrated resource monitoring unit 201 for monitoring resources of the entire system;
A virtualization system resource monitoring unit 202 for monitoring resources of the virtualization system;
A middleware execution control management unit 203 in the virtualization system for controlling and managing the execution of middleware for executing simulation in the virtualization system and controlling and managing execution of the web GUI service;
A calculation resource monitoring unit 204 for monitoring the calculation resources; And
A calculation resource control unit 205 for controlling the calculation resources for parallel processing of the simulation,
And an independent platform for web-based simulation execution using one physical server.
제1항에 있어서,
상기 계산과학모듈 관리부(102)는,
상기 다수의 계산과학 모듈의 메타정보 스키마를 정의하기 위한 계산과학 모듈 메타정보 스키마 정의부(211);
상기 다수의 계산과학 모듈의 각 소프트웨어의 스키마 정보를 관리하기 위한 소프트웨어(SW) 스키마 정보 관리부(212); 및
상기 다수의 계산과학 모듈들의 시뮬레이션에 대한 인터페이스를 제공하기 위한 시뮬레이션 수행 인터페이스 제공부(213)
를 포함하는 것을 특징으로 하는 하나의 물리적 서버를 이용한 웹 기반 시뮬레이션 실행을 위한 독립 플랫폼.
The method according to claim 1,
The calculation science module managing unit 102,
A computational science module meta information schema defining unit 211 for defining a meta information schema of the plurality of computational science modules;
A software (SW) schema information management unit (212) for managing schema information of each software of the plurality of calculation science modules; And
A simulation execution interface providing unit 213 for providing an interface for simulation of the plurality of calculation science modules,
And an independent platform for web-based simulation execution using one physical server.
제1항에 있어서,
계산 자원 관리부(103)는,
상기 작업의 제출, 실행, 완료 및 상기 작업의 상태를 확인하기 위한 실행로그 관리부(221);
시스템 자원을 나누어 슬롯별로 할당하기 위한 서버 자원 관리부(222);
다수의 가상머신으로 자원을 할당하기 위한 가상화 자원 관리부(223);
상기 시뮬레이션 실행에 있어서 병렬로 작업을 실행하기 위한 시뮬레이션 병렬 실행 처리부(224); 및
고성능 컴퓨팅(HPC)을 제공하기 위해 상기 서버를 시스템처럼 관리 및 운영하기 위한 서버 클러스터링부(225)
를 포함하는 것을 특징으로 하는 하나의 물리적 서버를 이용한 웹 기반 시뮬레이션 실행을 위한 독립 플랫폼.
The method according to claim 1,
The calculation resource managing unit 103,
An execution log management unit 221 for confirming the submission, execution and completion of the job and the status of the job;
A server resource management unit 222 for allocating system resources by slots;
A virtualization resource management unit 223 for allocating resources to a plurality of virtual machines;
A simulation parallel execution processing section (224) for executing a task in parallel in the execution of the simulation; And
A server clustering unit 225 for managing and operating the server as a system to provide high performance computing (HPC)
And an independent platform for web-based simulation execution using one physical server.
제1항에 있어서,
웹 GUI 서비스 제공부(104)는,
시뮬레이션을 위한 각 워크플로우의 GUI를 제공하기 위한 워크플로우 GUI 제공부(231);
상기 시뮬레이션의 통계를 분석하는 시뮬레이션 통계 분석부(232);
상기 시뮬레이션의 결과를 시각화하여 출력하기 위한 시뮬레이션 결과 가시화부(233); 및
상기 계산과학모듈 관리부(102) 및 상기 계산 자원 관리부(103)를 연동하기 위한 연동부(234)
를 포함하는 것을 특징으로 하는 하나의 물리적 서버를 이용한 웹 기반 시뮬레이션 실행을 위한 독립 플랫폼.
The method according to claim 1,
The Web GUI service provider 104,
A workflow GUI providing unit 231 for providing a GUI of each workflow for simulation;
A simulation statistical analysis unit 232 for analyzing statistics of the simulation;
A simulation result visualization unit 233 for visualizing and outputting the result of the simulation; And
An interlocking unit 234 for interlocking the calculation science module management unit 102 and the calculation resource management unit 103,
And an independent platform for web-based simulation execution using one physical server.
제1항에 있어서,
상기 가상화 컴퓨팅 통합 운영 환경 제어부(101)는,
상기 하나의 물리적 서버를 웹 서비스 가상머신, 데이터베이스 가상머신, 관리 가상머신, 및 실행 가상머신으로 나누어 제어하고, 상기 웹서비스 가상머신, 상기 데이터베이스 가상머신, 상기 관리 가상머신 및 상기 실행 가상머신 각각에 대하여, 중앙처리장치(CPU) 코어의 개수, 하드디스크드라이브(HDD) 용량, 및 메모리(Memory) 용량을 할당하는 것을 특징으로 하는 하나의 물리적 서버를 이용한 웹 기반 시뮬레이션 실행을 위한 독립 플랫폼.
The method according to claim 1,
The virtualization computing integrated operating environment control unit (101)
Wherein the one or more physical servers are divided into a web service virtual machine, a database virtual machine, a management virtual machine, and an execution virtual machine, and the web service virtual machine, the database virtual machine, the management virtual machine, Wherein a number of central processing unit (CPU) cores, a hard disk drive (HDD) capacity, and a memory capacity are allotted to the independent platform for executing a web-based simulation using one physical server.
제6항에 있어서,
상기 계산 자원 관리부(103)는,
시뮬레이션 실행 요청을 수신하면, 상기 실행 가상머신에 할당된 상기 중앙처리장치(CPU) 코어의 개수를 상기 시뮬레이션 실행 요청에 대응하는 각 작업으로 할당하는 것을 특징으로 하는 하나의 물리적 서버를 이용한 웹 기반 시뮬레이션 실행을 위한 독립 플랫폼.
The method according to claim 6,
The calculation resource managing unit 103,
Wherein the number of the central processing unit (CPU) cores assigned to the execution virtual machine is allocated to each job corresponding to the simulation execution request upon receiving the simulation execution request. Independent platform for execution.
제 1항에 있어서,
상기 독립 플랫폼은,
네트워크를 통해 접속한 사용자 단말로 웹 GUI를 제공하며,
상기 사용자 단말의 선택 입력에 따라, 다수의 계산과학 모듈들 중, 필요한 계산과학 모듈이 선택되고,
상기 사용자 단말의 설정 입력에 따라, 상기 선택된 계산과학 모듈의 실행 순서, 방법 및 조건이 설정되고,
상기 설정에 따라 상기 계산 자원을 활용하여 병렬처리를 통해 시뮬레이션이 실행되고,
상기 시뮬레이션이 실행된 이후, 상기 웹 GUI 서비스 제공부(104)가 상기 시뮬레이션의 결과를 가시화하여 출력해주는 것을 특징으로 하는 하나의 물리적 서버를 이용한 웹 기반 시뮬레이션 실행을 위한 독립 플랫폼.
The method according to claim 1,
The independent platform includes:
A web GUI is provided to a user terminal connected through a network,
According to the selection input of the user terminal, a necessary computational science module among a plurality of computational science modules is selected,
An execution order, a method and a condition of the selected computational science module are set according to the setting input of the user terminal,
Wherein simulation is executed through parallel processing using the computational resources according to the setting,
Wherein the web GUI service providing unit (104) visualizes and outputs the result of the simulation after the simulation is executed, and an independent platform for web based simulation execution using one physical server.
제 1 항에 있어서,
상기 독립 플랫폼은,
커널 기반 가상 시스템(KVM: Kernel-based Virtual Machine)을 사용하여 가상화되는 것을 특징으로 하는 하나의 물리적 서버를 이용한 웹 기반 시뮬레이션 실행을 위한 독립 플랫폼.
The method according to claim 1,
The independent platform includes:
A standalone platform for web-based simulation execution using a single physical server, characterized by being virtualized using a kernel-based virtual machine (KVM).
제 1 항에 있어서,
상기 독립 플랫폼은,
HTCondor를 이용하여 작업을 제출하고 스케쥴러를 거쳐 상기 계산자원에 할당되어 작업의 결과를 얻어내는 것을 특징으로 하는 하나의 물리적 서버를 이용한 웹 기반 시뮬레이션 실행을 위한 독립 플랫폼.
The method according to claim 1,
The independent platform includes:
Wherein the task is submitted using the HTCondor and is assigned to the computational resources via the scheduler to obtain the result of the task, and an independent platform for executing the web-based simulation using one physical server.
KR1020160177266A 2016-12-23 2016-12-23 Independent platform for executing web-based simulation using one physical server KR101811317B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160177266A KR101811317B1 (en) 2016-12-23 2016-12-23 Independent platform for executing web-based simulation using one physical server

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160177266A KR101811317B1 (en) 2016-12-23 2016-12-23 Independent platform for executing web-based simulation using one physical server

Publications (1)

Publication Number Publication Date
KR101811317B1 true KR101811317B1 (en) 2018-01-25

Family

ID=61093955

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160177266A KR101811317B1 (en) 2016-12-23 2016-12-23 Independent platform for executing web-based simulation using one physical server

Country Status (1)

Country Link
KR (1) KR101811317B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111652453A (en) * 2019-02-15 2020-09-11 西门子产品生命周期管理软件公司 Intelligent workflow advisor for part design, simulation and manufacturing
KR20210101412A (en) * 2020-02-10 2021-08-19 주식회사 오내모 Secondary refining simulator method by back-end service platform

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002007173A (en) 2000-06-22 2002-01-11 Hitachi Ltd Function evaluating method for computer system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002007173A (en) 2000-06-22 2002-01-11 Hitachi Ltd Function evaluating method for computer system

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111652453A (en) * 2019-02-15 2020-09-11 西门子产品生命周期管理软件公司 Intelligent workflow advisor for part design, simulation and manufacturing
KR20210101412A (en) * 2020-02-10 2021-08-19 주식회사 오내모 Secondary refining simulator method by back-end service platform
KR102329068B1 (en) * 2020-02-10 2021-11-19 주식회사 오내모 Secondary refining simulator method by back-end service platform

Similar Documents

Publication Publication Date Title
US10896064B2 (en) Coordinated, topology-aware CPU-GPU-memory scheduling for containerized workloads
Ren et al. A methodology towards virtualisation-based high performance simulation platform supporting multidisciplinary design of complex products
Calheiros et al. Cloudsim: A novel framework for modeling and simulation of cloud computing infrastructures and services
US8205208B2 (en) Scheduling grid jobs using dynamic grid scheduling policy
US10360050B2 (en) Simulation of high performance computing (HPC) application environment using virtual nodes
Wei et al. Aneka cloud application platform and its integration with windows azure
Gogouvitis et al. Seamless computing in industrial systems using container orchestration
Han et al. Refining microservices placement employing workload profiling over multiple kubernetes clusters
Chang et al. On construction and performance evaluation of a virtual desktop infrastructure with GPU accelerated
Shih et al. Implementation and evaluation of a container management platform on Docker: Hadoop deployment as an example
Shabanov et al. Building the software-defined data center
KR101811317B1 (en) Independent platform for executing web-based simulation using one physical server
Kibe et al. Proposal for improving throughput in supersaturated cloud
Luckow et al. Abstractions for loosely-coupled and ensemble-based simulations on Azure
Goscinski et al. High performance computing clouds
CN104424012A (en) Method and equipment used for providing user-defined virtual device
Saluja et al. Cdac scientific cloud: On demand provisioning of resources for scientific applications
Kommeri et al. Energy efficiency of dynamic management of virtual cluster with heterogeneous hardware
Zhao et al. Migrating scientific workflow management systems from the grid to the cloud
Zhao et al. Designing and deploying a scientific computing cloud platform
Suriansyah et al. Compute functional analysis leveraging the IAAS private cloud computing service model in packstack development
Rubio-Montero et al. User-guided provisioning in federated clouds for distributed calculations
Muralitharan et al. Optimization of performance and scheduling of HPC applications in cloud using cloudsim and scheduling approach
Maenhaut et al. Efficient resource management in the cloud: From simulation to experimental validation using a low‐cost Raspberry Pi testbed
Jaikar et al. Performance evaluation of scientific workflow on openstack and openvz

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant