20141204

1. MARSSx86 사용법을 정리함.
사용법은 정리했지만, 이미지 생성에 어려움을 겪는 중이다.
checkpoint 생성에서 오류가 발생함.
내 이미지, 정섭이 형이 준 이미지 모두에서 에러 발생
create_checkpoint가 없어서 ‘checkpoint_after 0’을 사용했더니 오류가 발생했나보다.
정섭이 형의 VM 이미지에서 create_checkpoint로 생성하니 잘 된다.
create_checkpoint로 생성하니 잘 되었는데, 그 다음으로 실험이 잘 되지 않았다.
simulation을 시작하는 순간 바로 끝나버렸다. (오류)
./util/run_bench.py를 사용해 실행하지 않고, 명령어를 직접 주어 실행해보았다.

char device redirected to /dev/pts/23
QEMU 0.14.1 monitor - type 'help' for more information
(qemu) ::ERROR::Can't find 'ooo' machine generator.qemu-system-x86_64: ptlsim/build/sim/machine.cpp:532: void MachineBuilder::setup_machine(BaseMachine&, const char*): Assertion `gen' failed.

ooo라는 machine이 정의되어 있지 않은데 이를 사용하려 해서 발생한 오류였다. util.cfg에서 machine 옵션을 single_core로 바꿔주었다.
한 개의 checkpoint 생성은 잘 되는데, checkpoint 생성이 끝날 때마다 OSError가 발생해 여러 개의 checkpoint를 동시에 생성하는데 문제가 있음. 그보다 우선, checkpoint가 제대로 생성되고 있는지 약간의 걱정도 됨. stdout이 파일에 잘 쓰이는 것을 보아서는 실험이 잘 되는 듯 하다.
원래 아래와 같은 코드를

def pty_to_stdout(fd, untill_chr):
    chr = '1'
    while chr != untill_chr:
        chr = os.read(fd, 1)
        sys.stdout.write(chr)
    sys.stdout.flush()

다음과 같이 수정했다.

def pty_to_stdout(fd, untill_chr):
    chr = '1'
    while chr != untill_chr:
        try:
            chr = os.read(fd, 1)
            sys.stdout.write(chr)
        except OSError:
            break
    sys.stdout.flush()

잘 된다.


2. Valgrind를 사용해 SPECCPU2006의 BBV 생성함.
하루 넘게 걸림. 금방 끝나는 것들은 금방 끝나지만, 오래 걸리는 것도 있다. 오류나는 것은 없었다. (gamess_triazolium에서 에러가 났지만, 원래 에러가 나는 것처럼 보인다.)


3. 내일 할 것 – 교수님께서 말씀하신 연구 주제 정리 논문 읽기 & 실험 준비

Advertisements
Posted in 1) Memo

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

누적 방문자 수
  • 88,610 hits
%d bloggers like this: