• 제목/요약/키워드: 소프트웨어 그래프

검색결과 278건 처리시간 0.027초

재구성형 어레이 아키텍처에서 데이터 복사 흐름을 고려한 코드 매핑 기법 (A Code Mapping Technique Considering With Data Copying Flow On Coarse-Grained Reconfigurable Array Architectures)

  • 조두산
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2010년도 추계학술발표대회
    • /
    • pp.1632-1634
    • /
    • 2010
  • 고성능 재구성형 어레이 아키텍처는 애플리케이션에 내재된 병렬성을 충분히 활용하도록 풍부한 하드웨어 리소스로 구성되어 있다. 이러한 하드웨어 리소스는 소프트웨어 파이프라이닝 기반 코드할당 기법을 통하여 사용된다. 이러한 코드할당 기법은 기존의 소프트웨어 파이프라이닝 기법에 FPGA 에서의 라우팅 & 위치선정기법이 연결된 형식으로 구성된다. 이러한 기존의 연구들은 데이터 흐름 (data flow)을 단순한 형태로 가정하여 개발되었다. 따라서 루프 코드 펼침 (loop unrolling)에 따라서 발생되는 데이터 복사에 의한 흐름 (copy flow)은 코드 매핑할 때 고려하지 않기 때문에 소프트웨어 파이프라이닝 적용시 네트웍 리소스의 중복사용으로 인한 데이터 충돌문제(data congestion)로 Minimum Initiation Interval (MII)증가에 따르는 성능 저하가 발생할 수 있다. 본 연구에서는 다양한 데이터 복사 흐름까지 고려하도록 데이터 의존도 그래프 (Data Dependence Graph, DDG)를 확장하여 스케쥴링 단계에서 데이터 충돌 지연에 의한 MII 증가를 방지하여 최적의 시스템 성능을 얻도록 코드 할당 기법을 개발하였다.

함수 수준 특징정보 기반의 오픈소스 소프트웨어 모듈 탐지 (Detection of an Open-Source Software Module based on Function-level Features)

  • 김동진;조성제
    • 정보과학회 논문지
    • /
    • 제42권6호
    • /
    • pp.713-722
    • /
    • 2015
  • OSS(Open-Source Software)의 사용 증가와 함께 라이선스 위반, 취약한 소스코드 재사용 등에 의한 분쟁 및 피해가 빈번해지고 있다. 이에, 실행파일(바이너리) 수준에서 프로그램에 OSS 모듈이 포함되었는지 여부를 확인하는 기술이 필요해졌다. 본 논문에서는 바이너리에서 함수 수준의 특징정보를 사용하여 OSS 모듈을 탐지하는 기법을 제안한다. 기존 소프트웨어 특징정보(버스마크) 기반 도용 탐지 기법들은 프로그램 전체 간 유사성을 비교하기 때문에 프로그램의 일부로 포함된 OSS 모듈들을 탐지하는데 부적합하다. 본 논문에서는, 함수 수준의 실행명령어, 제어 흐름 그래프(Control Flow Graph)와 개선된 함수 수준 구조적 특징정보를 추출하고 유사성을 비교하여 OSS 모듈의 임의 사용 여부를 탐지한다. 제안기법의 효율성과 각 특징정보들의 OSS 탐지 성능을 평가하기 위해, 특징정보량, OSS 모듈 탐지 시간 및 정확도, 컴파일러 최적화에 대한 강인성을 실험하였다.

그래프 구조를 이용한 카테고리 구조로부터 상하위 관계 추출 (Graph-based ISA/instanceOf Relation Extraction from Category Structure)

  • 최동현;최기선
    • 한국정보과학회논문지:소프트웨어및응용
    • /
    • 제37권6호
    • /
    • pp.464-469
    • /
    • 2010
  • 상하위 관계 자동 추출은 분류체계를 자동 구축하는 데 있어서 핵심적인 내용이며, 이렇게 자동으로 구축된 분류 체계는 정보 추출과 같은 여러 가지 분야에 있어서 중요하게 사용된다. 본 논문에서는 카테고리 구조로부터 상하위 관계를 추출하는 방식에 대하여 제안한다. 본 논문에서는 판별하고자 하는 카테고리 구조뿐만이 아닌, 그와 관련된 다른 카테고리 구조까지 고려하여 카테고리 이름에 나타난 토큰들간의 수식 그래프를 구축한 후, 그래프 분석 알고리즘을 통하여 각 카테고리 구조가 상하위 관계일 가능성에 대한 점수를 매긴다. 실험 결과, 본 알고리즘은 기존의 연구로 상하위 관계임을 판별할 수 없었던 일부 카테고리 구조에 대하여 성공적으로 상하위 관계인지를 판별하였다.

소프트웨어 테스팅을 위한 동적 프로그램 슬라이싱 알고리즘의 효율성 비교 (On the Efficiency Comparison of Dynamic Program Slicing Algorithm for Software Testing)

  • 박순형;박만곤
    • 한국정보처리학회논문지
    • /
    • 제5권9호
    • /
    • pp.2323-2333
    • /
    • 1998
  • 어떤 프로그램에서 오류가 발견되었을 때 프로그래머는 어떤 시험 사례(test-case)를 통해 프로그램을 분석한다. 이처럼 현재 입력 값에 영향을 끼치는 모든 명령문들에 관련된 동적 슬라이싱(dynamic slicing)과 이를 구현하는 기술은 실제 테스팅 및 디버깅 분야에서 매우 중요하다고 할 것이다. 본 논문에서는 이러한 동적 프로그램 슬라이스(dynamic program slices)를 산출하는 마킹 알고리즘을 제시하였고 이것을 프로그래밍한 뒤 예제 프로그램을 적용시켜 구현하였다. 구현 결과는 실행 이력에 대한 마킹 테이블(marking table), 동적 종속 그래프(Dynamic Dependence Graph) 그리고, 축소 동적 종속 그래프(Reduced Dynamic Dependence Graph)로 나타내었다. 그리고, 본 논문에서 제시한 효율적인 동적 슬라이스 생성을 위한 마킹 알고리즘과 동적 종속 그래프가 기존의 기법 보다 더 효율성이 높다는 것을 보였다.

  • PDF

용수 감량공급 기준곡선을 반영한 단일 댐 모의 운영 모형의 사용자 편의 환경 개발 (Development of a graphic user interface for single reservoir simulation model reflecting discrete hedging rule)

  • 진영규;이상호;박진혁
    • 한국수자원학회:학술대회논문집
    • /
    • 한국수자원학회 2018년도 학술발표회
    • /
    • pp.374-374
    • /
    • 2018
  • 프로그래밍 언어로 개발된 프로그램들은 최종 사용자 입장에서 입력과 출력이 불편하다. 또한, 모의 결과를 분석하기 위하여 그래프를 작성하는 소프트웨어를 이용하면 시간이 오래 걸린다. 본 연구에서는 기 개발된 용수 감량공급 기준곡선을 반영한 단일 댐 모의 운영 모형을 최종 사용자가 쉽게 활용할 수 있도록 사용자 편의 환경을 개발한 것에 대해 소개하고자 한다. 용수 감량공급 기준곡선을 반영한 단일 댐 모의 운영의 사용자 편의 환경은 미국의 GoldSim Technology Group에서 개발한 GoldSim을 이용하여 개발하였다. 개발된 사용자 편의 환경에는 단일 댐 모의 운영에 필요한 여러 입력 자료를 쉽게 입력할 수 있도록 하였다. 단일 댐 모의 운영 입력 자료에는 월별 기본계획공급량, 가뭄 단계별 용수 감량공급 비율, 과거 유입량 시계열, 갈수 빈도 유입량 시계열, 가뭄 단계별 감량공급 실행 저수량, 초기 저수량, 저수용량 등이 있다. 개발된 모형의 초기값은 합천댐의 자료가 입력되어 있으나, 입력자료를 변경하여 다른 다목적댐의 모의 운영에 활용이 가능하다. 단일 댐 모의 운영 결과로서 모의 기간 내 발생한 용수별 용수 공급 부족량과 감량공급 일수를 확인가능하다. 또한, 단일 댐 모의 운영 결과를 다양한 그래프로 출력 할 수 있다. 출력 가능한 시계열 그래프는 사용자가 입력한 용수 감량공급 기준곡선, 모의 시 사용한 유입량 시계열, 가뭄 단계, 용수 공급량, 저수량이다. 연구의 사례와 같이 GoldSim을 활용하면 연구개발의 편의 환경을 별도의 편의 환경 개발자를 거치지안고 과학 기술자가 직접 개발할 수 있다.

  • PDF

제어 흐름 그래프의 명령어 유사성에 기반한 자바 버스마크 (A Java Birthmark Based on Similarity Between Instructions of Control Flow Graph)

  • 박희완;임현일;최석우;한태숙
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2009년도 춘계학술발표대회
    • /
    • pp.424-427
    • /
    • 2009
  • 소프트웨어 버스마크는 프로그램을 식별하는데 사용될 수 있는 프로그램의 고유한 특징을 말한다. 본 논문에서는 자바 메소드의 제어 흐름 그래프 유사도에 기반한 자바 버스마크를 제안한다. 제어 흐름 그래프 유사도는 노드의 유사도와 에지의 유사도로 나누어 계산하였다. 노드의 유사도는 인접 노드의 유사도를 함께 고려했으며, 에지 유사도는 이미 매칭된 노드들 사이의 거리를 측정하는 방법을 사용했다. 본 논문에서 제안한 버스마크를 평가하기 위해서 서로 다른 프로그램을 구별할 수 있는 신뢰도와 프로그램 최적화나 난독화에 견딜 수 있는 강인도에 대한 실험을 하였다. 실험 결과로부터 본 논문에서 제안하는 버스마크가 기존의 정적 버스마크보다 신뢰도가 높으면서도 난독화나 컴파일러 변경에 강인하다는 것을 확인하였다.

ILP 프로세서를 위한 개선된 레지스터 할당 기법 (An Improved Register Allocation Technique for ILP Processors)

  • 신화정;이기호
    • 한국정보과학회논문지:소프트웨어및응용
    • /
    • 제28권2호
    • /
    • pp.201-209
    • /
    • 2001
  • 고성능 마이크로 프로세서들은 성능 향상을 위해 ILP를 지원한다. 병렬성을 극대화시키기 위해서는 많은 성능 저해 요인들을 제거해야 한다. 최근에는 컴파일러의 역할을 증대시켜 이러한 요인들을 줄이기 위한 노력들이 활발히 진행되고 있다. 본 논문에서는 성능 저해 요인인 조건 분기 처리를 위하여 조건 실행과 레지스터 할당을 결합함으로써 메모리로의 대피를 최소화하고 병렬성을 향상시킬 수 있는 개선된 레지스터 할당 알고리즘을 제안한다. 제안한 방법을 적용하여 실험한 결과 간섭 그래프의 에지수가 4.47% 감소되었고 그 결과 요구되는 대피 변수의 수도 21.35% 감소되었다. 그리고 기존의 방법에 비해 19.38%의 성능 향상 결과를 얻었다. 결국 본 레지스터 할당 기법은 조건 실행을 통해 조건 분기 명령을 제거하여 기본 블록 내의 명령어 수를 증가시켜 병렬처리의 기회를 증진시키고 조건 분석을 통해 간섭 그래프의 불필요한 에너지를 제거시켜 보다 효율적인 레지스터 할당을 실현함으로써 제안한 방법의 타당성을 검증하였다.

  • PDF

그래프 기반 바이너리 구조 비교 기법의 강인성 개선 (Improving Resilience in Graph-based Structure Comparison for Binary Objects)

  • 장준혁;조유근;홍지만
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2012년도 한국컴퓨터종합학술대회논문집 Vol.39 No.1(A)
    • /
    • pp.104-106
    • /
    • 2012
  • 소프트웨어 버스마크 (Software Birthmark)는 프로그램 실행 파일로부터 프로그램의 고유한 정보를 추출하는 기법이다. 프로그램의 도용을 판별하기 위해 바이너리로부터 버스마크를 추출하여 원본 프로그램과의 유사도를 측정하거나 악성 코드 탐지에 사용된다. 본 논문에서는 그래프 기반 바이너리 구조 매칭기법을 기반으로 한 버스마크를 제안한다. 제안 기법은 원본 프로그램과 대상 프로그램 사이에서 함수와 함수, 기본 블록과 기본 블록의 매칭 방법을 개선함으로써, 기존 기법에 비해 강인성(Resilience)이 향상된 버스마크를 추출한다.

한글 공동 편집기 (Collaborative Hangul Editor)

  • 김상욱;차경애;김우년
    • 한국정보과학회 언어공학연구회:학술대회논문집(한글 및 한국어 정보처리)
    • /
    • 한국정보과학회언어공학연구회 1997년도 제9회 한글 및 한국어 정보처리 학술대회
    • /
    • pp.454-460
    • /
    • 1997
  • 여러 응용 분야에 따라 많은 공동작업 시스템이 있다. 이러한 시스템들은 각 응용 영역에 따라 요구되는 문제가 다르다. 이 논문에서는 공동작업객체의 개념을 제시한다. 이 개념은 어떠한 멀티미디어 공동작업 시스템에도 적용할 수 있는 시스템 소프트웨어의 구조적인 모델이다. 이 모델은 지식베이스에서 이벤트를 자동으로 공유하고 각 이벤트에 대한 동작을 비동기적 동기적으로 수행한다. 이 논문에서의 공동작업객체는 멀티미디어 객체의 집합인데, 개념 그래프와 지식 쉘로 표현된다. 이 공동작업객체에서 수행되는 한글 공동텍스트 편집기는 한글 편집 지식에 의하여 공동으로 편집할 수 있다. 또한 한글 공동텍스트 편집기는 공동작업을 위하여 공동작업 객체를 관리, 유지하는 기능을 제공한다. 앞으로는 일반적인 공동작업 객체의 이론적 모델을 연구한다.

  • PDF

FDS 응용에 의한 하드웨어 소프트웨어 분할 알고리즘의 시간 복잡도 개선 (Improvement of time complexity of Hardware-Software partitioning algorithm using FDS)

  • 오주영;박효선;박도순
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2000년도 가을 학술발표논문집 Vol.27 No.2 (3)
    • /
    • pp.24-26
    • /
    • 2000
  • 본 논문에서는 FDS를 응용한 하드웨어 분할 방법을 강 제약 조건을 만족하면서 FDS를 응용하는 방법보다 낮은 복잡도의 분할 알고리즘을 제안한다. 기존의 FDS 응용 방법은 힘값 계산에서 종속성에 의해 후위 연산이 받는 영향값을 계산하여야 하므로 이로 인한 시간 복잡도가 가중되었다. 본 논문에서는 이러한 복잡도를 저하시키기 위해 노드의 분포 그래프와 구현에 소요되는 비용, 그리고 해당 파티션에서의 실행시간 등에 의해 상대적 긴박도를 정의하여 분할을 수행하지만, 종속성 검사는 종속성 제약조건에 의한 분포그래프의 변화와 스케쥴에 대해서만 고려되며 힘값 계산에는 고려하지 않는다. 또한, 분할 단계에서 스케쥴링을 함께 고려함으로써 합성 이후에 재 스케쥴링의 부하를 경감할 수 있도록 하였다. 제안 알고리즘 결과는 ILP 결과와 비교 분석하였다.

  • PDF