1 / 11

삼성전자 DS 부문 소프트웨어연구소 과제 제안서

삼성전자 DS 부문 소프트웨어연구소 과제 제안서. 2013 . 9 . 12. 프로젝트 과제 제안. 1. Python 기반 성능 Metric Monitor Tool 개발. 내용 및 목적 trace 결과나 CPU Utilization, Disk I/O Throughput 등의 Data 를 읽어들여 사용자가 수동으로 분석하기 위한 Tool 을 개발 Test 용 Metric Data 는 제공됨

tayte
Download Presentation

삼성전자 DS 부문 소프트웨어연구소 과제 제안서

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 삼성전자 DS부문소프트웨어연구소과제 제안서 2013. 9. 12

  2. 프로젝트 과제 제안 1

  3. Python 기반 성능 Metric Monitor Tool 개발 • 내용 및 목적 • trace 결과나 CPU Utilization, Disk I/O Throughput 등의 Data 를 읽어들여 사용자가 수동으로 분석하기 위한 Tool 을 개발 • Test 용 Metric Data 는 제공됨 • PyQtGraph 에 대부분의 참고 로직이 제공되므로, Python 및 GUI Programming 에 경험이 있다면 어렵지 않게 수행 가능한 프로젝트

  4. Python 기반 성능 Metric Monitor Tool 개발 • GUI 전체 Overview • 좌측에는 GUI Control Panel, 우측에는 Graph 창이 존재한다. • 윈도우 상단에는 Menu Bar, ToolBar 등이 존재한다. • 좌측 Control Panel 에는 Section 별로 Sub Menu 및 Control 등이 존재한다. • 우측에는 복수개의 그래프 패널들이 존재한다. • 하위 GUI 는 모두 PyQtGraph 에서 제공함

  5. Python 기반 성능 Metric Monitor Tool 개발 • 그래프 패널 모드 • 1개부터 4개까지의 확대, 축소 창을 가질 수 있으며, 사용자가 선택 가능하다. • 프로그램 종료시에 각 창의 레이아웃이 저장되며, 재실행시 동일한 위치 및 레이아웃을 가져야 한다. • 각 창 사이의 크기는 조절 가능하다.

  6. Python 기반 성능 Metric Monitor Tool 개발 • ROI(Region of Interest) • 관심 영역을 사용자가 직접 표기할 수 있도록 기호를 삽입 – 직선, 박스, 화살표 기호 형태 • 그래프 위도우 내에 ROI 삽입이 가능하여야 한다. • 한 그래프내의 ROI 는 연결된 다른 그래프에서도 확대, 축소되어 동일한 자리에 보여야 한다. • 별도의 ROI 윈도우가 존재하여, 삽입된 ROI 의 종류가 정렬되어 보여야 한다. • ROI 윈도우의 한 ROI 항목을 클릭하면, 해당 ROI 위치로 그래프 윈도우가 Scroll 하여야 한다. • 삽입된 ROI 목록들은 Load/Save 가 가능하여야 한다.

  7. Python 기반 성능 Metric Monitor Tool 개발 • Custom Grid & XY Axis • 그래프의 확장, 축소시 x, y 축의 단위는 적절하게 변환하여 표기되어야 한다.

  8. Python 기반 성능 Metric Monitor Tool 개발 • 자동 Scrolling 기능 • 사용자가 직접 그래프 윈도우를 스크롤 할 필요 없이, 일정 시간 간격으로 자동으로 스크롤할 수 있는 기능을 삽입한다. • 특정 키보드 입력에 따라 스크롤 시작, 잠시 멈춤, 재개, 종료 가 가능하다. • 스크롤링 여부와 관계 없이 사용자의 ROI 및 화살표 기호, 키보드입력이 가능하여야 한다. • 입력된 화살표 기호 및 키보드는 별개의 창에 선별되어 쉽게 보여줄 수 있어야 하며, 윈도우 내의 항목을 클릭하면 해당 항목을 그래프 윈도우가 보여주어야 한다. • custom plotting 기능 • plotting 시에 graph 는 사용자 정의된 도형으로 그릴 수 있어야 한다. • e.g.) call flow depth 가 10을 넘어가는 점에 대해서는(y-axis 가 10 이상인 경우 ) 해당 지점의 point 를 굵은 사각형 모양으로 plotting 할 수 있어야 한다. • backgound filling 기능 • 그래프 윈도우의 특정 background region 에는 지정된 색상으로 filling 할 수 있어야 한다. • e.g) 특정 시간이나 날짜등의 데이터에 대해서는 background 를 검은색으로 채우는 기능. • 코딩시 유의점 • 모든 로직들은 클래스로 추상화하여야 한다. • 추상화된 데이터들은 확장성 있게 설계 되어야 한다. • 클래스의 메서드들은 최대 20라인을 넘지 않도록 작성하여야 하며, 공백과 주석을 적절히 활용하여 이해하기 쉽도록 작성하여야 한다. • Qt Designer 를 이용하여 GUI 와 Logic 을 분리하여야 한다.

  9. 프로젝트 과제 제안 2

  10. 기계학습을 이용한 성능 Metric 패턴 인식기 개발 • 내용 및 목적 • Hadoop 등에서 다양한 benchmark tool 을 수행하면 이에 따른 성능 metric 은 benchmark 결과에 따라 모두 달리 보여짐 • 각 benchmark solution 의 resource utilization pattern 을 이용하여 어떠한 benchmark 수행 결과인지를 판단한다. • benchmark 의 종류를 판단한 후, 어떤 지점에서 utilization 이 극대화되기 시작하는지를 판단한다. • 판단 및 예측에 사용되는 머신 러닝 알고리즘은 추후 공지

  11. 기계학습을 이용한 성능 Metric 패턴 인식기 개발 • 구현 내용 • DB화된 Test Data 의 분류 • Test Data 의 판별 • DB화된 Test Data 의 분류 • Test Data 로 제공되는 Data 를 Category 에 맞춰 category 로 나눈다. • Test Data 의 판별 • 새로 입력되는 Test Data 의 Scrolling 시간이 지남에 따라 각 Category 별 확률 및 예상 경로를 GUI 로 보여준다. • 해당 category 에서 어떤 시점에 utilization 이 극대화되는지를 판별하여 예측한다.

More Related