• 제목/요약/키워드: 다중 스레드

검색결과 80건 처리시간 0.026초

다중스레드 모델의 스레드 코드를 분산환경에서 실행 가능한 자바 바이트 코드로 변환하기 위한 번역기 설계 (Design of Translator for generating Java Bytecode in Distributed environment from Thread code of Multithreaded Models)

  • 김기태;조선문;고훈준;이갑래;유원희
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2001년도 봄 학술발표논문집 Vol.28 No.1 (A)
    • /
    • pp.49-51
    • /
    • 2001
  • 다중스레드 모델은 데이터플로우 모델의 내부적인 병렬성, 비동기적 자료 가용성과 폰 노이만 모델의 실행 지역성을 결합하여 병렬처리 시스템의 성능을 향상시켰다. 이 모델은 프로그램의 실행을 위하여 컴파일러에 의해 생성된 스레드를 수행하며, 스레드의 생성 방법에 따라 자원 활용 빈도나 동기화 빈도와 같은 스레드의 질이 결정되는 특징이 있다. 하지만 다중스레드 모델은 실행 모델이 특정 플랫폼에 제한되는 단점을 가지고 있다. 이에 반해 자바는 플랫폼에 독립거인 특징을 가지고 있어 다중스레드 모델의 스레드 코드를 실행 단위인 자바 언어로 변환하여 다중스레드 모델의 특징을 여러 플랫폼에서 수정 없이 사용할 수 있게 된다. 자바는 분산된 환경에 적합한 언어이기 때문에 본 논문에서 제안한 번역기에 의해 다중스레드 모델의 스레드 코드를 자바 언어로 변환한 후 자바의 원격 매소드 호출을 이용하여 다중스레드 모델의 스레드 코드를 분산된 환경에서 처리하였다. 본 논문은 다중스레드 코드가 로컬 컴퓨터에서 여러 스레드를 생성하여 처리하던 것을 자바의 원격 메소드 호출을 이용하여 분산된 환경에서 실행 가능하도록 한다. 다중스레드 모델의 스레드 코드를 분산 환경에서 실행 가능한 자바 바이트 코드로 변환하는 번역기를 설계, 구현한다.

다중스레드 모델의 스레드 코드를 자바 바이트 코드로 변환하기 위한 번역기 설계 (Design of Translator for generating Java Bytecode from Thread code of Multithreaded Models)

  • 김기태;이갑래;양창모;유원희
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2000년도 봄 학술발표논문집 Vol.27 No.1 (A)
    • /
    • pp.68-70
    • /
    • 2000
  • 다중스레드 모델은 데이터플로우 모델의 내부적인 병렬성, 비동기적 자료 가용성과 폰 노이만 모델의 실행 지역성을 결합하여 병렬처리 시스템의 성능을 향상 시켰다. 이 모델은 프로그램의 실행을 위하여 컴파일러에 의해 생성된 스레드를 수행하며, 스레드의 생성 방법에 따라 자원 활용 빈도나 동기화 빈도와 같은 스레드의 질이 결정 되는 특징이 있다. 하지만 다중스레드 모델은 실행 모델이 특정 플랫폼에 제한되는 단점을 가지고 있다. 이에 반해 자바는 플랫폼에 독립적인 특징을 가지고 있어 다중스레드 모델의 스레드 코드를 실행 단위인 자바 언어로 변환하면 다중스레드 모델의 특징을 여러 플랫폼에서 수정 없이 사용할 수 있게 된다. 자바는 원시 언어를 중간 언어 형태의 바이트 코드로 변환하여 각 아키텍처에 맞게 설계된 자바 가상 머신이 설치된 시스템에서 자바 언어를 수행한다. 이러한 자바 언어의 바이트 코드는 번역기의 중간 언어와 같은 역할을 수행하고, 자바 가상 머신은 번역기의 후위부와 같은 역할을 한다. 본 논문은 다중스레드 코드가 플랫폼에 독립적인 특성을 갖출 수 있도록 다중스레드 코드를 자바 가상 머신에서 실행 가능하도록 한다. 즉, 다중스레드 모델의 스레드 코드를 자바 바이트 코드로 변환하는 번역기를 설계, 구현하고, 자바 가상 머신의 실행을 분석한다.

  • PDF

다중 스레드 Java 프로그램의 실행 중 처리되지 않는 예외상황을 예측하는 방법 (Exception Analysis for Multithreaded Java Programs)

  • 류석영;이광근
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2001년도 봄 학술발표논문집 Vol.28 No.1 (A)
    • /
    • pp.73-75
    • /
    • 2001
  • 본 논문에서는 다중 스레드 Java 프로그램의 실행 중 처리되지 않는 예외상황을 실행 전에 미리 예측하는 분석 방법을 제안한다. Java에서는 안전성 문제 때문에 다중 스레드 사이에서 예외 상황을 발생시키지 않도록 제한하고 있는데 반해, 본 연구에서는 프로그래머가 자유롭게 다중 스레드 사이에 예외상황을 발생시킬 수 있도록 언어를 확장한 후에 그 프로그램에서 처리되지 않는 예외상황을 예측해낸다. 이 분석 방법은 다중 스레드 Java 프로그램의 각 스레드에서 동시에 수행될 수 있는 부분들을 미리 예측해내고, 이 분석 정보를 이용하여 다중 스레드 사이에서 예외상황을 발생시킬 때 처리되지 않는 예외상황을 예측한다.

다중 스레드 모델에서 스레드 우선 순위에 따른 스레드 스케쥴링 기법 (The thread scheduling method based on the priority of threads on the multithread models)

  • 이정호;고훈준;양창모;유원희
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2000년도 가을 학술발표논문집 Vol.27 No.2 (3)
    • /
    • pp.659-661
    • /
    • 2000
  • 폰 노이만 모델의 지역성과 데이터플로우 모델의 병렬성을 결합하여 등장한 모델이 다중 스레드 모델이다. 다중스레드 모델의 목적은 통신시간과 계산 시간을 겹침으로써 프로세서의 활용도를 높이고자 하는 것이다. 기존의 대부분의 다중 스레드 모델의 스레드 스케쥴링 기법은 FIFO 혹은 FILO 방식을 사용하고 있다. 본 논문에서는 프로세서의 활용도를 높이고 프로세서의 휴지 시간을 줄이기 위해서 원격 함수 호출 혹은 원격 메모리 참조 기능의 스레드(이후로는 원격 스레드라 부름)와 계산 기능의 스레드가 동시에 활성화되었을 때 원격 스레드들을 먼저 수행하는 것이 프로세서의 지연 시간을 줄이고 병렬성을 높이는 데 효과적임을 제안한다. 이것을 구현하기 위해서 프레임 내부의 지속 벡터(CV)를 CCV(call continuation vector)와 LCV(local continuation vector) 둘로 구분하였다. 스레드가 활성화될 때 CCV에는 원격 스레드들을, LCV에는 계산 스레드들을 저장한 후, CCV에 저장된 스레드들을 먼저 수행하고 LCV를 나중에 수행한다.

  • PDF

다양한 운영체제에서의 다중 프로세스와 스레드 모델의 웹 서버 성능 비교 (Performance Comparisons of Multi-Process and Multi-Thread based Web Servers on Multiple Operating System Platforms)

  • 도인환;김경중;정규헌;전기훈;노삼혁
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2003년도 봄 학술발표논문집 Vol.30 No.1 (C)
    • /
    • pp.94-96
    • /
    • 2003
  • 맡은 사용자 영역의 프로그램들이 확장성과 성능 향상을 목적으로 다중 프로세스 모델에서 다중 스레드 모델로 바뀌고 있다. 웹 서버도 폭발적으로 증가하는 사용자 요청을 수용할 수 있도록 확장성과 성능 향상을 위해서 다중 스레드 모델을 적용하였다. 본 논문에서는 다중 프로세스 모델을 적용한 웹 서버와 다중 프로세스/다중 스레드 모델을 적용한 웹 서버에 대한 성능을 여러 운영체제 환경에서 평가하였다. 실험 결과 전체적으로 다중 프로세스 모델이 다중 스레드 모델보다 더 좋은 성능과 안정성을 보였다.

  • PDF

다중 프로세스와 스레드 모델의 웹 서버 성능 비교 분석 (Performance Measurement and Analysis of the Web Server Using Multi-Process and Multi-Thread)

  • 정기훈;염미령;노삼혁
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2002년도 봄 학술발표논문집 Vol.29 No.1 (A)
    • /
    • pp.277-279
    • /
    • 2002
  • 다중 스레드 모델은 다중 프로세스 모델에 비하여 확장성이 좋은 것으로 알려졌다. 이에 따라서 초당 수백내지 수 천개의 컨넥션들을 처리해야 하는 웹 서버에 다중 스레드 모델을 채택해야 하는 것을 긍정적으로 생각해 볼 수 있다. 하지만 다중 프로세스 모델을 적용한 웹 서버와 두 종류의 혼합형 다중 프로세스/스레드 모델을 적용시킨 웹 서버의 성능을 평가하였다. 실험은 Pentium-III 750의 Linux 2.4.5에서 진행하였으며, 실험 결과 다중 스레드 모델이 다중 프로세스 모델에 비하여 항상 확장성이 있다고 할 수 없으며, 다중 프로세스 모델이 다중 스레드 모델보다 더 좋은 안정성을 보이는 것으로 나타났다.

  • PDF

내장형 다중 스레드 서버 기술 (Embedded Multi-Threaded Server Technology)

  • 김연정;조동섭
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2003년도 춘계학술발표논문집 (중)
    • /
    • pp.1059-1062
    • /
    • 2003
  • 서버란 클라이언트에게 서비스를 제공하는 프로그램을 말하다. 클라이언트에게 서비스를 효과적으로 제공하기 위해서 여러 가지가 있지만 그 중 다중 스레드 서버의 장점을 지닌 임베디드 서버를 개발하려고 한다. 이를 위하여 임베디드이란 무엇이며 개발 시 고려 사향과 개발 단계를 알아보고 범용 컴퓨터에서 주로 사용되는 다중 스레드 서버의 장점을 알아본 후 임베디드 시스템에 다중 스레드 서버를 구현하는데 가장 효율적인 운영체제와 다중 스레드 방식을 제안하려고 한다.

  • PDF

CC-NUMA 시스템을 위한 다중 스레드 프로세스의 CG 바인딩 (The CG Binding of Multi-Threaded Process for CC-NUMA System)

  • 김정녀;김해진;윤석한;이철훈
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 1999년도 가을 학술발표논문집 Vol.26 No.2 (3)
    • /
    • pp.155-157
    • /
    • 1999
  • 본 논문에서는 CC-NUMA 시스템인 고성능 멀티미디어 서버(MX Server)상에서 다중 스레드 프로세스의 CG(CPU Group) 바인딩 설계 및 구현 내용을 소개한다. 고성능 멀티미디어 서버의 컴퓨팅 서버용 운영체제인 COSMIX(cache COherent Shared Memory unIX)에서는 서버의 플랫폼에 알맞은 하드웨어 및 시스템 관련하여 CC-NUMA 시스템에 적합한 운영체제 기능을 설계하였다. 고성능 멀티미디어 서버에서는 데이터의 지역성을 고려하여 한 노드인 CG에 프로세스를 바인드 하는 기능이 있으나, 다중 스레드로 구성된 프로세스의 바인딩 기능은 없었다. Oracle8i와 같은 인터넷 DBMS에서는 하나의 프로세스내의 다중 스레드가 일정한 노드의 디스크를 점유하여 사용할 수 있으므로 이와 같은 다중 스레드의 프로세스를 해당 디스크가 있는 하나의 CG에 바인딩 하는 기능이 필요하다. 현재는 가용한 플랫폼이 없어서 MX Server 대신 PC 태스트베드인 CC-NUMA 시스템 시뮬레이션 환경에서 다중 스레드의 CG 바인딩 기능을 구현하고 그 시험을 완료하였다.

  • PDF

다중스레드 모델을 위한 Non-Strict 프로그램의 조건식 스레드 분할 (A Thread Partitioning of Conditional Expression of Non-Strict Programs for Multithreaded Models)

  • 조선문;김기태;고훈준;이갑래;유원희
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2001년도 봄 학술발표논문집 Vol.28 No.1 (A)
    • /
    • pp.67-69
    • /
    • 2001
  • 다중스레드 모델은 긴 메모리 참조 지체 시간과 동기화의 문제점을 해결할 수 있다는 점에서 대규모 병렬 시스템에 매우 효과적이다. 다중스레드 병렬기계를 위하여 Non-Strict 함수 프로그램을 번역할 때 가장 중요한 것은 순차적으로 수행될 수 있는 부분을 찾아내어 스레드로 분할하는 것이다. 스레드 분할의 목적은 스레드의 크기를 크게 만들어 Non-Strict 함수 프로그램이 수행되는 동안 발생하는 동기화 횟수와 스레드간의 문맥 전환 횟수를 최소화하는 것이다. 본 논문에서는 Non-Strict 함수 프로그램을 보다 큰 스레드로 분할하는 조건식의 스레드 분할 알고리즘을 제안한다.

정보 검색용 다중 스레드 한국어 형태소 해석기 (A Korean Morphological Analyzer Supports Multi-Threads)

  • 최유경;안동언;정성종
    • 한국정보과학회 언어공학연구회:학술대회논문집(한글 및 한국어 정보처리)
    • /
    • 한국정보과학회언어공학연구회 2001년도 제13회 한글 및 한국어 정보처리 학술대회
    • /
    • pp.41-47
    • /
    • 2001
  • 본 논문에서는 한국어 형태소 해석기에 다중 스레드 기법을 도입하여 다중 처리가 가능하도륵 하였다. 기존의 여러 형태소 해석기들은 언어 분석에만 관심이 있었기 때문에 다량의 문서를 동시에 처리하는 기능을 고려하지 않았다. 그러나 형태소 해석기가 정보 검색 시스템 분야에서 사용되기 시작하면서, 다수의 사용자가 대량의 문서를 처리해야 하는 필요성이 생겼다. 스레드 간에는 메모리 영역과 같은 자원을 공유한다. 이러한 특징 때문에 자칫하면 예상치 못한 결과가 야기될 수 있다. 따라서, 다중 스레드 기법을 사용하기 위해서는 스레드의 특징을 고려한 조치가 필요하다 기존의 한국어 형태소 해석기의 소스 코드를 분석하여 자주 사용되는 전역 변수는 하나의 구조체로 구성하였다. 그리고 이러한 전역 변수와 크기가 큰 지역 변수를 사용할 때 메모리를 동적으로 할당하였다. 또한, 파일에서 입력값을 읽어오거나 파일에 결과값을 쓰는 등 여러 스레드가 접근할 때 값이 변경될 위험이 있는 부분은 조건 변수를 이용하여 동기화 시켰다. 구현된 시스템의 검증을 위하여, 단일 스레드 방식으로 순차적인 처리를 하는 원래의 형태소 해석기와 비교 실험을 실시하였다. 35Kbyte 문서 30개를 처리하는 경우, 다중 처리가 가능한 형태소 해석기가 단일 스레드 방식의 형태소 해석기보다 처리속도가 약 12% 향상되었다.

  • PDF