12
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【パフォーマンスチューニング】GUIで確認したマシンリソースをCLIで確認する方法

Last updated at Posted at 2025-12-10

株式会社ブレインパッド プロダクトユニットの鈴木です。

弊社は「データ活用の促進を通じて持続可能な未来をつくる」をミッションに、
データ分析支援やSaaSプロダクトの提供を通じて、企業の「データ活用の日常化」を推進しております。

現在、私は企業のマーケティング活動をデータで支援するRtoaster action+の開発を担当しております。

はじめに

最近のITは「クラウドやコンテナ技術の普及により、アプリケーションの実行環境が抽象化され、一見内部を意識する必要がなくなってきている部分があります。しかし、コスト最適化や遅延の最小化といったパフォーマンスチューニングを行うためには、抽象化されたその下にある基盤リソースの利用状況を把握し、リソースの過不足を判断する必要があります。

と言うことで、本記事ではCLIでマシンリソースがどのくらいあるかをコマンドで確認する方法をみていきます!

リソースを確認するマシン

ミニpc n100のWSL上で確認していきます。

余談ですが、、、
↑のミニPCは、Linuxやサーバー構築を勉強するために購入しました。
(自分が買った時はセールで1万5000円くらいで買えました。)

まずは、GUIで見られる情報を確認していきます!
(Windowsは、タスクマネージャーでリソースを確認できます)

CPU

  • CPUモデル:インテル® プロセッサー N100
  • ソケット: 1
  • コア: 1
  • 論理プロセッサ数: 4
  • L1キャッシュ: 384KB
  • L2キャッシュ: 2.0MB
  • L3キャッシュ: 6.0MB

メモリ

  • メモリ:12.0GB

後の章でCLIを利用しリソースの確認を行なって行きますが、リソースの確認はWSL上で行うので↑と同じ12GBにならず、WSLに割り当てたメモリが表示されます。
wslのメモリ設定は↓のように設定しています。

.wslconfig
[wsl2]
memory=8GB
swap=3GB

ストレージ

  • 容量:239GB
  • 種類:SSD(SATA)

GPU

CLIでリソースの状況を確認してみる

CPU

  • コア: 1
  • ソケット: 1
  • 論理プロセッサ数: 4
  • L1キャッシュ: 384KB
  • L2キャッシュ: 2.0MB
  • L3キャッシュ: 6.0MB
$ lscpu
~ 略 ~ 
CPU(s):                   4              # 論理コア数
  On-line CPU(s) list:    0-3
Vendor ID:                GenuineIntel
  Model name:             Intel(R) N100
    CPU family:           6
    Model:                190
    Thread(s) per core:   1              # コア毎のスレッド数
    Core(s) per socket:   4              # ソケット毎のコア数
    Socket(s):            1              # ソケット数
    Stepping:             0
    BogoMIPS:             1612.80
~ 略 ~ 
(展開可能)lscpuの省略なし出力
$ lscpu
Architecture:             x86_64
  CPU op-mode(s):         32-bit, 64-bit
  Address sizes:          39 bits physical, 48 bits virtual
  Byte Order:             Little Endian
CPU(s):                   4
  On-line CPU(s) list:    0-3
Vendor ID:                GenuineIntel
  Model name:             Intel(R) N100
    CPU family:           6
    Model:                190
    Thread(s) per core:   1
    Core(s) per socket:   4
    Socket(s):            1
    Stepping:             0
    BogoMIPS:             1612.80
    Flags:                fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss ht syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon rep_good n
                          opl xtopology tsc_reliable nonstop_tsc cpuid tsc_known_freq pni pclmulqdq vmx ssse3 fma cx16 pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx
                           f16c rdrand hypervisor lahf_lm abm 3dnowprefetch ssbd ibrs ibpb stibp ibrs_enhanced tpr_shadow ept vpid ept_ad fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid rdse
                          ed adx smap clflushopt clwb sha_ni xsaveopt xsavec xgetbv1 xsaves avx_vnni vnmi umip waitpkg gfni vaes vpclmulqdq rdpid movdiri movdir64b fsrm md_clear serialize arch_lb
                          r flush_l1d arch_capabilities
Virtualization features:
  Virtualization:         VT-x
  Hypervisor vendor:      Microsoft
  Virtualization type:    full
Caches (sum of all):
  L1d:                    128 KiB (4 instances)
  L1i:                    256 KiB (4 instances)
  L2:                     8 MiB (4 instances)
  L3:                     6 MiB (1 instance)
NUMA:
  NUMA node(s):           1
  NUMA node0 CPU(s):      0-3
Vulnerabilities:
  Gather data sampling:   Not affected
  Itlb multihit:          Not affected
  L1tf:                   Not affected
  Mds:                    Not affected
  Meltdown:               Not affected
  Mmio stale data:        Not affected
  Reg file data sampling: Vulnerable: No microcode
  Retbleed:               Mitigation; Enhanced IBRS
  Spec rstack overflow:   Not affected
  Spec store bypass:      Mitigation; Speculative Store Bypass disabled via prctl
  Spectre v1:             Mitigation; usercopy/swapgs barriers and __user pointer sanitization
  Spectre v2:             Mitigation; Enhanced / Automatic IBRS; IBPB conditional; RSB filling; PBRSB-eIBRS SW sequence; BHI BHI_DIS_S
  Srbds:                  Not affected
  Tsx async abort:        Not affected
$ lscpu -C
NAME ONE-SIZE ALL-SIZE WAYS TYPE        LEVEL SETS PHY-LINE COHERENCY-SIZE
L1d       32K     128K    8 Data            1   64        1             64 # L1データキャッシュ
L1i       64K     256K    8 Instruction     1  128        1             64 # L1命令キャッシュ
L2         2M       8M   16 Unified         2 2048        1             64 # L2キャッシュ
L3         6M       6M   12 Unified         3 8192        1             64 # L3キャッシュ(CPUの全てのコアで共有)

メモリ

こちらは、↑に記載した.wslconfigでWSLに割り当てたメモリの値が確認できる

  • 物理メモリ
  • スワップ領域
$ free -h
               total        used        free      shared  buff/cache   available
Mem:           7.8Gi       886Mi       6.4Gi       3.7Mi       619Mi       6.9Gi  # 物理メモリ
Swap:          3.0Gi          0B       3.0Gi                                      # スワップ領域

ストレージ

  • /mnt/c:238GB( ≒ GUIで確認した容量239GB)がマウントされている
  • /:1007GBがマウントされている
(展開可能)/に約1TBが割り当てられている根拠
$ diskpart

Microsoft DiskPart バージョン 10.0.26100.1150

Copyright (C) Microsoft Corporation.
コンピューター: WIN-7DT18NF20BJ

DISKPART> select vdisk file="C:\Users\xxxx\AppData\Local\wsl\{e5a5e0ab-c6c0-4b4d-ab7b-fb4a25af4350}\ext4.vhdx"

DiskPart により、仮想ディスク ファイルが選択されました。

DISKPART> detail vdisk

デバイスの種類 ID: 0 (不明)
ベンダー ID: {00000000-0000-0000-0000-000000000000} (不明)
状態: 追加済み
仮想サイズ: 1024 GB
物理サイズ:   13 GB
ファイル名: C:\Users\xxxx\AppData\Local\wsl\{e5a5e0ab-c6c0-4b4d-ab7b-fb4a25af4350}\ext4.vhdx
子: いいえ
親ファイル名:
関連付けられたディスク番号: 見つかりません。
$ df -h
Filesystem      Size  Used Avail Use% Mounted on
none            3.9G     0  3.9G   0% /usr/lib/modules/6.6.87.2-microsoft-standard-WSL2
none            3.9G  4.0K  3.9G   1% /mnt/wsl
drivers         238G  100G  138G  43% /usr/lib/wsl/drivers
/dev/sdd       1007G   11G  945G   2% /
none            3.9G   80K  3.9G   1% /mnt/wslg
none            3.9G     0  3.9G   0% /usr/lib/wsl/lib
rootfs          3.9G  2.7M  3.9G   1% /init
none            3.9G  828K  3.9G   1% /run
none            3.9G     0  3.9G   0% /run/lock
none            3.9G     0  3.9G   0% /run/shm
none            3.9G   76K  3.9G   1% /mnt/wslg/versions.txt
none            3.9G   76K  3.9G   1% /mnt/wslg/doc
C:\             238G  100G  138G  43% /mnt/c
snapfuse         64M   64M     0 100% /snap/core20/2669
snapfuse         64M   64M     0 100% /snap/core20/2682
snapfuse         51M   51M     0 100% /snap/snapd/25577
snapfuse        512K  512K     0 100% /snap/tcpdump/28
tmpfs           3.9G   16K  3.9G   1% /run/user/1000
$ df -h /
Filesystem      Size  Used Avail Use% Mounted on
/dev/sdd       1007G   12G  945G   2% /
$ lsblk
NAME
    MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
sda   8:0    0 388.4M  1 disk
sdb   8:16   0   186M  1 disk
sdc   8:32   0     3G  0 disk [SWAP]
sdd   8:48   0     1T  0 disk /snap
                              /mnt/wslg/distro
                              /

GPU

今回は割愛しますが、NVIDIAのGPUを利用している場合は、nvidia-smiコマンドでGPUの管理や監視が行えるみたいです。

↓ (自分の記事ではないのですが)こちらに使い方など書いてあったのでご覧いただければと思います。

最後に

今後は、今回確認できたリソースがどのくらい使われているかなどを確認するコマンドを紹介する予定です!
アカウントをフォローしてお楽しみにしてお待ちください ♪

12
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
12
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?