• Title/Summary/Keyword: Multi Thread

Search Result 188, Processing Time 0.051 seconds

An Efficient Data Transfer Algorithm based on Multi-thread for Big Data Transfer System (대용량 이관시스템을 위한 멀티 쓰레드 기반 데이터 이관 기법)

  • Jang, WonJun;Ryu, Byung-Gul
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2019.10a
    • /
    • pp.85-88
    • /
    • 2019
  • 4차 산업 혁명의 진행에 따라 빅 데이터를 활용한 다양한 응용 분야와 프로그램들이 생겨나고 있다. 이에 따라 기존에 성능 문제가 크게 제기되지 않았던 복사, 해쉬 계산 등의 문제에 대한 요구사항이 디지털 포렌식이나 디지털 데이터 기록물 보존 등의 분야에서 급증하고 있다. 본 논문에서는 복사, 해쉬가 동시에 진행되는 디지털 데이터 이관 분야에서 활용되는 대용량 이관 시스템을 위해 향상된 성능이 제공되는 알고리즘을 소개하며, 이를 구현한 시스템 구조를 제안한다. 또한 실험을 통해 제안하는 알고리즘이 기존에 활용되던 이관 시스템에 비해 평균 39% 향상된 성능을 보임을 증명한다.

Development of a Web Accelerator in the Kernel

  • Park, Jong-Gyu;Lim, Han-Na;Kim, Hag-Bae
    • 제어로봇시스템학회:학술대회논문집
    • /
    • 2001.10a
    • /
    • pp.70.3-70
    • /
    • 2001
  • In this paper, we suggest a kernel level multi thread web accelerator (called the SCALA-AX), which significantly improves the performance of the web soerver. In comparison with a conventional proxy web cache that is generally called a caching server and a simple content-copy based system, the primary functions and goals of SCALA-AX are designed to maximize the content services of a front end web server with high performance. Specifically, the SCALA-AX runs on the kernel level of a web sorrel, based on the newest caching techniques. Moreover, the SCALA-AX supports the http 1.1 protocol and allows the dynamic pages as well as static pages to be processed.

  • PDF

A Study on GPGPU Performance for the Configurations of Threads (GPGPU에서 쓰레드 구성을 위한 성능에 관한 연구)

  • Kim, Hyun Kyu;Lee, Hyo Jong
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2012.04a
    • /
    • pp.146-148
    • /
    • 2012
  • 최근 GPGPU를 활용한 병렬처리가 각광을 받고 있는 가운데 GPU의 구조적 특성인 매니코어(many core)기반에서 쓰레드(thread)의 구성이 성능에 얼마나 영향을 미치는지에 관해 수치적 해답을 얻고자 하였다. 이는 멀티코어 (multi core)기반으로 작성된 프로그램을 GPGPU로 변환하는 과정에서 쓰레드의 최대활용도를 빠르게 추측 할 수 있도록 도움을 얻고자 하는데 일차적인 목적이 있다. 현재 GPGPU의 쓰레드 구성은 입력되는 데이터의 양을 고려하여 충분한 테스트를 거쳐 경험적인 최적화 수를 지정해 주워야 한다. 이번 연구를 통해 GPGPU로 변환하는 과정에서 최적의 쓰레드 수구성 방법을 추측 할 수 있으며 더 나아가 동적으로 최적의 수를 구할 수 있도록 하는데 목적이 있다.

Implementation of Networked Virtual Environment by Using Effective Java Multi-Thread Parallelism (효과적인 자바 다중 쓰레드 병렬처리를 이용한 네트워크 가상환경의 구현)

  • Kim, Woo-Yeal;Park, Jong-Koo
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2004.05a
    • /
    • pp.829-832
    • /
    • 2004
  • 대단위(large-scale) 가상현실 시스템이나 가상현실 시스템의 구성요소가 네트워크(일반적인 통신망)를 통하여 분산되어 있는 경우를 네트워크 가상현실 시스템(Net-VE : Networked Virtual Environment)이라 한다. 가상현실의 환경을 분산 처리하는 경우 가상현실 시각의 공유방법, 분산시스템의 구성방법, 저속 혹은 고속통신망을 통한 대량의 데이터를 전송하는 방법, 가상현실 내의 이용자의 상호작용 방법, 데이터 공유방법, 분산처리 방법 등 가상현실 기술에 부가하여 통신망기술, 프로토콜 공학, 분산 처리기술 등 다양한 주변 기술이 필요하다. 따라서 본 논문에서는 더 유연성 있고 모듈러한 네트워크 가상 환경을 구축하는데 있어 효율적인 객체 지향 프로그래밍 기술인 자바의 다중 쓰레드 병렬처리 기법을 사용하고자 한다. 자바의 쓰레드 구조를 사용함으로써 네트워크 가상환경에서 여러 클라이언트에서 요청하는 데이터를 네트워크를 통한 지연에 대한 효과적인 대안으로서 자바의 다중 쓰레드 병렬처리 기법을 제안하고자 한다.

  • PDF

Optimization of SGX library OS for executing multi-thread JavaScript application (멀티쓰레드 자바스크립트 어플리케이션 실행을 위한 SGX library OS 최적화)

  • Chul-Min Lee;Byoung-Young Lee
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2024.05a
    • /
    • pp.226-228
    • /
    • 2024
  • 자바스크립트는 어플리케이션 및 서비스를 개발하는 주요한 언어 중 하나이다. 자바스크립트는 현재 서버 측에서도 널리 사용되고 있으며 서버에서 계산 집약적인 어플리케이션을 수행하기 위해 멀티쓰레드 기능도 최근 추가되었다. 이 논문에서는 Intel SGX 를 활용하여 클라우드 환경에서 자바스크립트 어플리케이션에 대한 보안을 강화하려는 시도를 다룬다. 그 과정에서 SGX 의 library OS 가자바스크립트 어플리케이션을 수행하는 데에 있어서 발생하는 성능 저하를 다루며, 이를 최적화하여 극복하는 방안을 제시한다. 또한, 실험 결과를 통해 제안된 최적화 기법이 어떻게 성능을 향상시키는지를 확인한다.

  • PDF

Design and Implementation of File Cloud Server by Using JAVA SDK (Java SDK를 이용한 파일 클라우드 시스템의 설계 및 구현)

  • Lee, Samuel Sangkon
    • The Journal of Korea Institute of Information, Electronics, and Communication Technology
    • /
    • v.8 no.2
    • /
    • pp.86-100
    • /
    • 2015
  • Cloud computing is a computing term that evolved in the late 2000s, based on utility and consumption of computer resources. Google say that "Cloud computing involves deploying groups of remote servers and software networks that allow different kinds of data sources be uploaded for real time processing to generate computing results without the need to store processed data on the cloud. Cloud computing relies on sharing of resources to achieve coherence and economies of scale, similar to a utility (like the electricity grid) over a network. At the foundation of cloud computing is the broader concept of converged infrastructure and shared services. Cloud computing, or in simpler shorthand just "the cloud", also focuses on maximizing the effectiveness of the shared resources." The cloud service is a smart and/or intelligent service to save private files in any device, anytime, anywhere. Dropbox, OAuth, PAClous are required that the accumulated user's data are archives with cloud service. Currently we suggest an implementation technique to process many tasks to the cloud server with a thread pooling. Thread pooling is one of efficient implementating technique for client and service environment. In this paper, to present the implementation technique we suggest three diagrams in the consideration of software engineering.

A Stability Verification of Backup System for Disaster Recovery (재해 복구를 위한 백업 시스템의 안정성 검증)

  • Lee, Moon-Goo
    • Journal of the Institute of Electronics and Information Engineers
    • /
    • v.49 no.9
    • /
    • pp.205-214
    • /
    • 2012
  • The main thing that IT operation managers consider is protecting assets of corporation from system failure and disaster. Therefore, this research proposed a backup system for a disaster recovery. Previous backup method is that if database update occurs, this record is saved in redo log, and if the size of record file is over than expected, this file is saved in archive log in order. Thus, it is possible to occur errors of data loss from the process of data backup which change in real time while changes of database occur. Suggested backup system is back redo log up to database of transaction log in real time, and back a record that can be omitted from previous backup method up to archive log. When recover the data, it is possible to recover redo log in real time online, and it minimizes data loss. Also, throughout multi thread processing method data recovery is performed and it is designed that system performance is improved. To verify stability of backup system CPN(Coloured Petri Net) is introduced, and each step of backup system is displayed in diagram form, and th e stability is verified based on the definition and theorem of CPN.

State Machine Frameworks Operating in Sensor Network Operation System based on Multi-Thread (멀티쓰레드 기반 센서네트워크 운영체제에서 동작하는 상태머신 프레임워크)

  • Lee, Seung-Keun;Kim, Byung-Kon;Choi, Byoung-Kyu;Shin, Heu
    • The KIPS Transactions:PartA
    • /
    • v.17A no.3
    • /
    • pp.127-136
    • /
    • 2010
  • A wireless sensor network(WSN) which roles as a mediator between living environment and computers in ubiquitous computing is very essential research area. Due to the constraint that sensor nodes should work in very resource-restricted circumstances, an operating system that can manage resources effectively is demanded. Also, a sensor network should be able to deal with many events quickly and simultaneously in order to respond to various physical changes in outer environment. The Sensor Network Operating System such as TinyOS, MANTIS and NanoQplus is much designed so that it can satisfy such requirement. But, for programmers who develop application program for sensor networks, they have lack of frameworks which the development is easily possible from restricted development environment. In this paper for this, we implemented a state machine framework apt for responsive systems in NanoQplus which is multi-thread-based sensor network operating system. In addition we propose an event broker module(EBM) for effective event dispatching, a message data structure for message sharing among state machines, and an execution module that handles messages and their queue and performs state transition of the machines. Furthermore, we could do the development more easily an application program with a state-based framework by developing CASE tools.

Performance Improvement of Single Chip Multiprocessor using Concurrent Branch Execution (분기 동시 수행을 이용한 단일 칩 멀티프로세서의 성능 개선)

  • Lee, Seung-Ryul;Kim, Jun-Shik;Choi, Jae-Hyeok;Choi, Sang-Bang
    • Journal of the Institute of Electronics Engineers of Korea SD
    • /
    • v.44 no.2
    • /
    • pp.61-71
    • /
    • 2007
  • The instruction level parallelism, which has been used to improve the performance of processors, expose its limit. The change of a control flow by a branch miss prediction is one of the obstacles that restrict the instruction level parallelism. The single chip multiprocessors have been developed to utilize the thread level parallelism. However, we could not use the maximum performance of the single chip multiprocessor in case of executing the coded programs without considering the multi-thread. In order to overcome the two performance degradation factors, in this paper, we suggest the concurrent branch execution method that applies to the multi-path execution method at a single chip multiprocessor. We executes all two flows of the conditional branch using the idle core processor. Through this, we can improve the processor's efficiency with blocking the control flow termination by the branch instruction and reducing the idle time. We analyze the effects of concurrent branch execution proposed in this paper through the simulation. As a result of that, concurrent branch execution reduces about 20% of idle time and improves the maximum 10% of the branch prediction accuracy. We show that our scheme improves the overall performance of maximum 39% compared to the normal single chip multiprocessor and maximum 27% compared to the superscalar processor.

Improving Performance of I/O Virtualization Framework based on Multi-queue SSD (다중 큐 SSD 기반 I/O 가상화 프레임워크의 성능 향상 기법)

  • Kim, Tae Yong;Kang, Dong Hyun;Eom, Young Ik
    • Journal of KIISE
    • /
    • v.43 no.1
    • /
    • pp.27-33
    • /
    • 2016
  • Virtualization has become one of the most helpful techniques in computing systems, and today it is prevalent in several computing environments including desktops, data-centers, and enterprises. However, since I/O layers are implemented to be oblivious to the I/O behaviors on virtual machines (VM), there still exists an I/O scalability issue in virtualized systems. In particular, when a multi-queue solid state drive (SSD) is used as a secondary storage, each system reveals a semantic gap that degrades the overall performance of the VM. This is due to two key problems, accelerated lock contentions and the I/O parallelism issue. In this paper, we propose a novel approach, including the design of virtual CPU (vCPU)-dedicated queues and I/O threads, which efficiently distributes the lock contentions and addresses the parallelism issue of Virtio-blk-data-plane in virtualized environments. Our approach is based on the above principle, which allocates a dedicated queue and an I/O thread for each vCPU to reduce the semantic gap. Our experimental results with various I/O traces clearly show that our design improves the I/O operations per second (IOPS) in virtualized environments by up to 155% over existing QEMU-based systems.