[완료] Kernel에 boot option주기에 대한 질문 입니다.

hyper9의 이미지

Kernel booting시에, "numa=fake=4*512" 와 같은 option을 주려고 하는데요.
(이 정보는 /Documentation/x86/x86_64/fake-numa-for-cpusets"에서 봤습니다.)

실제로 Kernel에 boot option을 어떻게 주어야 하는지를 모르겠네요.
조언을 부탁드립니다.

감사합니다.

pastime의 이미지

부트로더에서 설정 가능하지 않나요?

hyper9의 이미지

이것을 시작하게 된 것은 Kernel Document중에서 fake-numa-for-cpusets라는 document를
발견하고 나서인데요. (/Documentation/x86/x86_64/fake-numa-for-cpusets)

이 document의 설명을 보면 "numa=fake=4*512,"와 같은 boot option을 주면 System이 4개의
512Mbyte의 memory block을 가지고 이것을 cpuset에 할당할 수 있는 것으로 보여서요.
이것을 시도해보려고 하는 중이었고요.

/Documentation/x86/x86_64/fake-numa-for-cpusets의 설명을 보면요,
적절하게 boot option을 주고나면, dmesg command를 통해서, 아래와 같이 Fake numa node가
구성되는 것을 볼 수 있다고 설명하고 있거든요.

Faking node 0 at 0000000000000000-0000000020000000 (512MB)
Faking node 1 at 0000000020000000-0000000040000000 (512MB)
Faking node 2 at 0000000040000000-0000000060000000 (512MB)
Faking node 3 at 0000000060000000-0000000080000000 (512MB)
...
On node 0 totalpages: 130975
On node 1 totalpages: 131072
On node 2 totalpages: 131072
On node 3 totalpages: 131072

boot option을 주는 방법으로 일단은 /boot/grub/grub.conf file을 수정하면 되지 않을까 싶었는데요.

원래의 /boot/grub/grub.conf file의 내용은 아래와 같고요,
title Appliance Kernel - Over VGA port
root (hd0,0)
kernel /vmlinuz ro root=LABEL=/ PROMPT_NO nmi_watchdog=1 quiet
initrd /initrd.img

이렇게 설정한 후 booting을 하고나서, dmesg | grep Faking 을 실행해 보면요.
아래와 같이 보이고요.
[root@SERVER-64 ~]# dmesg | grep Faking
Faking a node at 0000000000000000-0000000220000000

이것은 아래와 같이 수정했습니다.
title Appliance Kernel - Over VGA port
root (hd0,0)
kernel /vmlinuz ro root=LABEL=/ PROMPT_NO nmi_watchdog=1 numa=fake=4*1024 quiet
initrd /initrd.img

다시 이렇게 설정한 후 booting을 하고나서, dmesg | grep Faking 을 실행해 보면요.
아래와 같이 보이네요
[root@SERVER-64 ~]# dmesg | grep Faking
Faking a node at 0000000000000000-0000000220000000

그렇다면 이렇게 boot option을 주는 것이 틀린 것이 아닌가하는 생각이 들었고요.
/Documentation/x86/x86_64/fake-numa-for-cpusets의 설명을 보면 boot option으로
"numa=fake=4*512,"를 주라고 했는데, 저는 "numa=fake=4*1024"라고 했거든요.
원래 설명에 있던 ","가 빠져있는 셈인데,,위와 같은 방법으로 Kernel boot option을 주는 거라면
","가 필요없어 보이고요 .
그러면,,다른 방법으로 boot option을 주어야 하는 것이 아닌가..하는 궁금증이 생겨서..이렇게 다시 질문을 올립니다.

조언 부탁드립니다.
감사합니다..

pastime의 이미지

일단 부트옵션을 주는 것은 지금처럼 해도 문제가 없을 것입니다.

다만 커널 부트 옵션의 형식이 달라진 것 같은데 (확실치는 않습니다만..;)
어떤 커널 버전을 쓰시는지 모르겠지만 최신 버전의 경우는 그냥
numa=fake=4 라고 하거나 numa=fake=1G 라고 지정하면 될 것 같습니다.

하지만 위와 같이 부트 옵션을 주었다고 해도 커널이 4를 인식해야 할 것 같은데
그렇지 않은걸 보면 혹시 커널 설정 시 CONFIG_NUMA_EMU 옵션이 빠진 건 아닐까요?

hyper9의 이미지

예,,말씀 해주신대로,,CONFIG_NUMA_EMU option 이 빠져서..
그게 빠졌다는 글을 올리려고 들어왔는데,,
벌써 조언을 주셨네요

감사합니다. ^^

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.