Automotive에서 멀티코어 채용

Posted at 2010/06/11 10:09 // in Research // by Daniel
Automotive에서 멀티코어 채용

multiple ECU에서 실행되던 소프트웨어가 Multi core에서 돌게 됨으로
in-vehicle architecture가 간단해진다.

이것은 복잡성이 전장 architecuture 에서 ECU의 하드웨어/소프트웨어 구조로 넘겨진다는 의미.

loria.fr [PDF]A Monot, N Navet, F Simonot, B Bavoux - … Real Time Software and Systems ( …, 2010 - loria.fr
erts2010.org [PDF]C Cullmann, C Ferdinand, G Gebhard, D Grund, C … - erts2010.org
크리에이티브 커먼즈 라이센스
Creative Commons License

MISRA-C : 크리티컬시스템을 위한 코딩 가이드라인

Posted at 2010/04/06 14:54 // in Research // by Daniel

image

코딩 컨벤션이 있군요. 자동차쪽 시스템에서 제정한 것 같습니다.

그런데 돈받고 팔아요 --a

http://www.misra-c2.com/

크리에이티브 커먼즈 라이센스
Creative Commons License

리튬이온 배터리 충방전 기술자료

Posted at 2009/02/03 13:41 // by Daniel

보호되어 있는 글 입니다.
내용을 보시려면 비밀번호를 입력하세요.

The case for energy-proportional computing

Posted at 2008/11/26 18:23 // in Research/Papers Review // by Daniel

L. Barroso and U. Holzle, “The case for energy-proportional computing,” IEEE Computer, December 2007.

간단한 내용.

구글의 입장에서 서버의 Low power기술이 어떻게 필요한 지 설명

 

image

서버는 모바일 장치와 달리 utilization(사용율)의 비율이 100%(peak), 0%(idle)이 아닌 경우가 많고 10~50% 사이, 특별히 20~40%사이가 많음

image

대강의 전력 소모를 보면 utilization을 기준으로 0일 때도 power(전력)는 peak의 50%를 소모함.(녹색선)

그래서 에너지 효율성(전력을 사용율로 나눔)은 쭈욱 떨어지게 됨(빨강)

 

그래서 아래 그림과 같이 utilization이 0 이 될 때 전력소모가 10%정도로 잘 떨어져주면 좋겠음(결국 그래프 각도가 문제)

그러면 효율은 10~50% 사이에서 꽤 괜찮음

image

그러려면 CPU 말고 주변기기의 전력소모 특성이 높아야 함. 디스크는 쓸 때 안쓸 때 차이가 크지만 대책없이 sleep하면 깨어나는 시간과 전력비용이 크다든지, 네트웍 디바이스는 끄는 모드란 게 없든지 --> Active low power 모드가 필요

크리에이티브 커먼즈 라이센스
Creative Commons License

cfsm - Codesign Finite State Machine generater

Posted at 2008/09/22 12:17 // in Research // by Daniel

http://www.mindrot.org/projects/cfsm/

FSM 스펙을 텍스트로 받아서 C 코드(템플릿)을 만들어주는 프로그램이랍니다.


아래와 같은 샘플 스펙 텍스트가 있을 때

image

image

이런 그래프로 나타낼 수 있는 코드를 생성해줍니다.

cvs로 다음과 같이 다운받습니다.

$ cvs -d anoncvs@anoncvs.mindrot.org/cvs checkout mtemplate cfsm

그리고 mtemplate와 cfsm을 make

$ cd mtemplate
$ make
$ cd ../cfsm
$ make

그러면 cfsm 파일도 생기고 기본적인 테스트도 돌립니다.

테스트로 만든 소스는 cfsm/regression에 있습니다.

C코드를 생성하려면 다음과 같이 하면 됩니다.(-d 옵션)

$ ../cfsm  -t.. -d -o t_ex0_fsm.c ../example.fsm
cfsm: Writing C source to "t_ex0_fsm.c"
cfsm: Writing C header to "t_ex0_fsm.h"

만일 스테이트 다이어그램 그림으로 만들어보고 싶으면(graphviz가 깔려있어야 함)

$ cd cfsm/regression
$ ../cfsm -t.. -g -o t_ex0_fsm.dot ../example.fsm
$ dot -Tjpg t_ex0_fsm.dot -o t_ex0_fsm.jpg

이런식으로 합니다.


# This file is in the public domain
# Damien Miller 2007-02-07

# $Id: t1_fsm.fsm,v 1.4 2007/11/18 09:51:19 djm Exp $

precondition-function-args new-state
transition-function-args none

state T1
    initial-state
    on-event T1_DONE -> T2
state T2
    on-event T2_DONE -> T3
state T3
    on-event T3_DONE1 -> T2
    on-event T3_DONE2 -> T4
state T4

이런 간단한 스펙을 바꾸면,

...생략
switch(old_state) {
case T1:
    switch (ev) {
    case T1_DONE:
        new_state = T2;
        break;
    default:
        goto bad_event;
    }
    break;
case T2:
    switch (ev) {
    case T2_DONE:
        new_state = T3;
        break;
    default:
        goto bad_event;
    }
    break;
case T3:
    switch (ev) {
    case T3_DONE1:
...후략

이런 코드가 생기고,

image

이런 그림으로 나타낼 수 있게 그래프 파일도 생성 됩니다.


Usage: cfsm [-h] [-HCD] [-o output-file] fsm-file
Command line options:
    -h               Display this help
    -d               Generate C header file in addition to source file
    -D               Only generate C header file (and not a source file)
    -g               Generate Graphviz dot file instead of C source/header
    -m template_file "Manual" output mode using user-supplied template
    -o output_file   Specify output file (default: fsm.[c|h|dot])
    -t template_dir  Specify path to C and Graphviz templates

크리에이티브 커먼즈 라이센스
Creative Commons License

오픈소스 웹 브라우저

Posted at 2008/08/13 23:39 // in Research // by Daniel

소스가 가벼운 웹 브라우저 어플리케이션을 찾아보기로 했습니다.

병렬화 이슈를 찾아보고 풀브라우징 되는 어플이 있으면 주제로 삼으려고

 

찾아본 것들

  • dillo

gtk1.2 써서 컴파일해야함

image

데비안 패치 해야 프레임 지원 켜짐.

비교적 빠른 편, 탭 브라우징도 지원

CSS 지원이 완벽하지 않고 플래시, 동영상 지원 안됨

$ apt-cache depends dillo
dillo
  의존: libc6
  의존: libfontconfig1
  의존: libfreetype6
  의존: libgcc1
  의존: libglib1.2ldbl
  의존: libgtk1.2
  의존: libjpeg62
  의존: libpng12-0
  의존: libssl0.9.8
  의존: libstdc++6
  의존: libx11-6
  의존: libxext6
  의존: libxft2
  의존: libxi6
  의존: libxrender1
  의존: wget
  의존: zlib1g
  충돌: <gzilla>
  대체: <gzilla>

 

  • midori

image image

빠른 편. 아파치 인증이 없는 듯. flash 안됨.

CSS 지원은 비교적 잘 됨. (안깨지고 잘 나옴) 소스코드 크기도 비교적 작음

의존하는 패키지가 좀 있음

$ apt-cache depends midori
midori
  의존: libatk1.0-0
  의존: libc6
  의존: libcairo2
  의존: libfontconfig1
  의존: libfreetype6
  의존: libglib2.0-0
  의존: libgtk2.0-0
  의존: libpango1.0-0
  의존: libpixman-1-0
  의존: libpng12-0
  의존: libsexy2
  의존: libwebkitgtk1d
  의존: libx11-6
  의존: libxcursor1
  의존: libxext6
  의존: libxfixes3
  의존: libxi6
  의존: libxinerama1
  의존: libxml2
  의존: libxrandr2
  의존: libxrender1
  의존: zlib1g

  • netsurf

RISC OS, unix(linux, BeOS?)지원. 느린 듯.

창 크기 변경 엄청 느림, CSS 페이지 많이 느림, 그림 뜨는 시간 느림. 탭 지원 안됨.

image

프레임 지원, 또는 파서 지원이 약한 듯.

HTML parser error : Tag o:p invalid
  style='font-size:9.0pt;font-family:Verdana'><o:p></o:p></span></b></p>
                                                  ^
namespace warning : Namespace prefix o is not defined
  style='font-size:9.0pt;font-family:Verdana'><o:p></o:p></span></b></p>

이런 에러가 좍 뜸.

image

  • midbrowser

모질라 게코 기반 임베디드용 브라우저라는데 실행시 에러남

가장 무거운 소스(45메가)

 

  • amaya

웹브라우저+HTML 에디터 W3C에서 제공하는 테스트베드 - 프레임지원 미비? 브라우저로 쓸 것은 아닌 것 같음

 

  • links gui

데비안 패키지 이름은 links2

links -g 로 실행하면 x화면, svga화면에서 실행할 수 있음.

아주 가벼움. 빠른 속도 그러나 한글 지원 못봤음. 역시 그림 이외엔 다른 지원 없을 듯. CSS 지원 완벽하지 않음.

$ apt-cache depends links2
links2
  의존: libc6
  의존: libdirectfb-1.0-0
  의존: libgpmg1
  의존: libjpeg62
  의존: libpng12-0
  의존: libssl0.9.8
  의존: libsvga1
    svgalib1-libggi2
  의존: libtiff4
  의존: libx11-6
  의존: zlib1g

image

image

게코와 웹킷도 봐야할 듯.

 

참고로 소스 크기

377K midori_0.0.17.orig.tar.gz
542K dillo_0.8.6.orig.tar.gz
965K netsurf_1.1.orig.tar.gz
4.0M links2_2.1pre32.orig.tar.gz
7.5M amaya_9.55~dfsg.0.orig.tar.gz
45M midbrowser_0.3.0rc1a-1~8.04.2.tar.gz

크리에이티브 커먼즈 라이센스
Creative Commons License

Intel Atom 프로세서

Posted at 2008/06/28 16:02 // in Research // by Daniel
http://www.intel.com/technology/atom/index.htm
사용자 삽입 이미지

이제껏 모르고 있었는데요 인텔 아톰 프로세서라는 게 출시 됐는데 TDP(파워)가 0.6~2.5와트 소모된다고 하고, 클럭은 1.8GHz까지 가능하다고 합니다. EM64T도 호환되고 HT도 지원하고요 VIA C3가 아니라 ARM에의 대항마인 것 같은데요

ISSCC2008에 소개되기도 했다고 하긴 하던데

The 2 GHz variant of the Silverthorne processor will operate at 1 volt and it will have performance equivalent to a first generation "Banias" Pentium M notebook processors circa 2003. Rattner confirmed this was for single-threaded performance on a broad range of applications. This would seem to imply that with multithreaded applications, the performance would be even higher than Banias which lacks Hyper-Threading.
http://blogs.zdnet.com/Ou/?p=987 이에 따르면 MPCore보다 훨씬 좋은 single thread 성능을 보일 것으로 보입니다 이게 그렇게 좋다면 크게 이슈 될 거 같은데 별 말이 없는 거 같네요. ISCA에서도 들어보지 못했구요 어떻게 평가해야 할까요? http://chitsol.com/537
크리에이티브 커먼즈 라이센스
Creative Commons License

Optimizing Dual-Core Execution for Power Efficiency and Transient-Fault Recovery

Posted at 2008/05/19 00:08 // in Research/Papers Review // by Daniel

Optimizing Dual-Core Execution for Power Efficiency and Transient-Fault Recovery IEEE PADS'07

Dual-Core Execution- Building a Highly Scalable Single-Thread Instruction Window (한글 설명) 여기 논문의 둘 째 판 쯤 됨.PACT05?

제대로 읽어보진 않았고 abstract정도만..

Dual-Core Execution(DCE)이란 single thread 프로그램을 코어 두개로 실행해서 빠르게 하겠다는 것인데, 이번 논문은 여기에 중복되는 계산을 좀 줄여서 파워와 안정성을 개선하겠다는 것인 듯.

Compared to the original DCE, the optimized DCE has similar speedups (34 percent on average) over single-core processors while reducing the energy overhead from 93 percent to 31 percent.


역시 에너지는 싱글 코어 때보다 더 소모되긴 하는데, 속도 30% 증가에 에너지 30% 더 소모. linear하군요. 그게 진짜인지는 논문을 읽어봐야 할 듯.
크리에이티브 커먼즈 라이센스
Creative Commons License

최적화

Posted at 2008/05/16 18:44 // in Research // by Daniel

공학에서 최적화 문제는 현상을 representation 잘하는 수식을 찾아내되 풀수 있을 만큼 쉬운 수준의 식으로 찾아야 이후에 수식을 통해 최적을 찾을 수 있고 그렇지 않다면 heuristic으로밖에 갈 수 없다(NP문제가 됨). - 연세대 모정훈 교수
http://www.stanford.edu/class/ee364a/index.html

크리에이티브 커먼즈 라이센스
Creative Commons License

좋은 분 발견

Posted at 2008/05/06 20:49 // in Research // by Daniel

http://naivete.isloco.com/

제가 있는 분야와 비슷한 쪽 공부하시는 분인 것 같은데, 논문들 읽고 독후감식으로 정리를 하셨네요

좋은 evaluation 감사.

크리에이티브 커먼즈 라이센스
Creative Commons License