OpenBSD에서 논리 프로세서를 비활성화하는 방법은 무엇입니까?

OpenBSD에서 논리 프로세서를 비활성화하는 방법은 무엇입니까?

우리 모두 알고 있듯이 OpenBSD는하이퍼스레딩은 기본적으로 비활성화되어 있습니다.. 그러나 htop16개의 CPU(8개는 온라인, 8개는 오프라인)를 표시하면 화면에서 추가 공간을 차지하므로 그다지 유익하지 않습니다.

여기에 이미지 설명을 입력하세요.

또한 sysctl16개의 논리적 CPU가 표시됩니다. 이것은 나에게 이해가 되지 않습니다. 하이퍼스레딩이 비활성화된 경우 8코어 8스레드 프로세서이므로 8개의 물리적/논리적 CPU가 표시되어야 합니다.

$ sysctl hw
hw.machine=amd64
hw.model=AMD Ryzen 7 5800H with Radeon Graphics
hw.ncpu=16
hw.byteorder=1234
hw.pagesize=4096
hw.disknames=sd0:6d1abdce154d2fc8
hw.diskcount=1
hw.sensors.cpu0.frequency0=3900000000.00 Hz
hw.sensors.cpu2.frequency0=3900000000.00 Hz
hw.sensors.cpu4.frequency0=3900000000.00 Hz
hw.sensors.cpu6.frequency0=3900000000.00 Hz
hw.sensors.cpu8.frequency0=3900000000.00 Hz
hw.sensors.cpu10.frequency0=3900000000.00 Hz
hw.sensors.cpu12.frequency0=3900000000.00 Hz
hw.sensors.cpu14.frequency0=3900000000.00 Hz
hw.sensors.ksmn0.temp0=83.12 degC (Tctl)
hw.sensors.it0.temp0=83.00 degC
hw.sensors.it0.temp1=49.00 degC
hw.sensors.it0.temp2=200.00 degC
hw.sensors.it0.fan0=0 RPM
hw.sensors.it0.fan1=3835 RPM
hw.sensors.it0.fan2=2986 RPM
hw.sensors.it0.volt0=1.74 VDC (VCORE_A)
hw.sensors.it0.volt1=1.62 VDC (VCORE_B)
hw.sensors.it0.volt2=2.67 VDC (+3.3V)
hw.sensors.it0.volt3=3.71 VDC (+5V)
hw.sensors.it0.volt4=10.69 VDC (+12V)
hw.sensors.it0.volt5=-3.24 VDC (-12V)
hw.sensors.it0.volt6=0.57 VDC (-5V)
hw.sensors.it0.volt7=3.68 VDC (+5VSB)
hw.sensors.it0.volt8=2.16 VDC (VBAT)
hw.cpuspeed=3200
hw.setperf=100
hw.vendor=AZW
hw.product=SER
hw.version=Default string
hw.serialno=A58003LH80340
hw.uuid=00020003-0004-0005-0006-000700080009
hw.physmem=13840232448
hw.usermem=13840216064
hw.ncpufound=16
hw.allowpowerdown=1
hw.perfpolicy=manual
hw.smt=0
hw.ncpuonline=8
hw.power=1
hw.ucomnames=

모든 "CPU"가 물리적 프로세서가 되도록 논리적 프로세서를 비활성화하려면 어떻게 해야 합니까?

답변1

하이퍼스레딩의 가용성은 BIOS/EFI에 의해 관리됩니다. OpenBSD가 하는 일은 프로세서/스레드를 오프라인으로 전환하는 것입니다. 따라서 BIOS/EFI에서 하이퍼스레딩 옵션을 비활성화하여 이 작업을 수행해야 합니다.

관련 정보