huge-pages

x86 비대칭 메모리 채널을 사용하는 Linux/GRUB의 물리적 메모리 주소 지정 및 hugepage 할당
huge-pages

x86 비대칭 메모리 채널을 사용하는 Linux/GRUB의 물리적 메모리 주소 지정 및 hugepage 할당

비대칭 듀얼 채널로 구성된 2개의 DRAM DIMM을 갖춘 최신 AMD/Intel x86 시스템이 있다고 가정해 보겠습니다. 그 중 하나는 16GB이고 다른 하나는 48GB입니다. 이 경우 더 큰 DIMM에서 32GB의 일반적인 사용을 비활성화하고 이를 32 * 1GB Hugepages로 표시하려고 합니다. 이렇게 하면 거대한 페이지 영역이 단일 채널로 액세스되고 다른 영역이 완전한 이중 채널로 액세스됩니다. 위의 시나리오를 Linux에서 구현할 수 있나요? 그렇다면 어떻게? AFAIK, x86 비대...

Admin

대형 페이지의 동기 할당을 강제하는 방법은 무엇입니까?
huge-pages

대형 페이지의 동기 할당을 강제하는 방법은 무엇입니까?

vm.nr_hugepagesLinux에서는 sysctl 또는 /sys/kernel/mm/hugepages/hugepages-<SIZE>kB/nr_hugepagessysfs 파일에 작성하여 (투명하지 않은) hugepage를 할당할 수 있습니다 . # to allocate 2 GiB worth of huge pages, assuming a huge page size of 2 MiB (default on x86) $ sysctl vm.nr_hugepages=1024 # likewise, bu...

Admin

Hubetlb 컨트롤러는 어디에서 자동으로 활성화됩니까?
huge-pages

Hubetlb 컨트롤러는 어디에서 자동으로 활성화됩니까?

Ubuntu 22.04 cgroup2 시스템의 kvm 가상 머신(8 vcpu + 8G 메모리), cat /sys/fs/cgroup/cgroup.subtree_control hugetlb controller included; 그러나 cgroup2 시스템을 갖춘 Ubuntu 22.04의 또 다른 kvm 가상 머신(4 vcpu + 4G 메모리), cat /sys/fs/cgroup/cgroup.controllers cpuset cpu io memory hugetlb pids rdma misc cat /sy...

Admin

/dev/hugepages의 권한을 어떻게 변경하나요?
huge-pages

/dev/hugepages의 권한을 어떻게 변경하나요?

/dev/hugepages다음 파일을 열어() 거대한 페이지를 할당하는 응용 프로그램이 있습니다 . 현재는 루트가 필요합니다. 권한을 어떻게 변경하나요? F38에 의해 자동으로 설치됩니다. #/usr/lib/systemd/system/dev-hugepages.mount # SPDX-License-Identifier: LGPL-2.1-or-later # # This file is part of systemd. # # systemd is free software; you can redistribu...

Admin

실제적인 문제
huge-pages

실제적인 문제

이사 공지 방금 이 질문(약간 수정됨)을 StackOverflow 질문(교차 게시에 대한 강력한 반대 때문에 삭제함)에서 옮겼는데 아직 답변이 제공되지 않았으며 여기에 더 적합할 수 있습니다. StackOverflow 질문에는 두 가지 의견(답변 없음)이 있습니다. 다음은 이러한 의견에 대한 간략한 요약입니다(이를 이해하려면 실제 질문을 읽어야 할 수도 있습니다). 파일 시스템 접근 방식을 libhugetlbfs사용하면 다양한 작업을 수행할 수 있습니다. 그것은 저에게 별로 설득력이 없습니다. 제...

Admin

Ubuntu의 cgroup v2에서 HugeTLB 컨트롤러를 활성화하는 방법
huge-pages

Ubuntu의 cgroup v2에서 HugeTLB 컨트롤러를 활성화하는 방법

활성화하려고 합니다.거대한 TLB내 시스템의 cgroup v2에 컨트롤러가 있지만 이를 수행하는 방법을 모르겠습니다. 내 시스템의 컨트롤러 목록은 다음과 같습니다. cat /sys/fs/cgroup/cgroup.controllers cpuset cpu io memory pids rdma 내 시스템에 표시되는 meminfo는 다음과 같습니다. cat /proc/meminfo | grep Huge AnonHugePages: 0 kB ShmemHugePages: 0 kB Fi...

Admin

Linux 스왑 파티션이 너무 클까요?
huge-pages

Linux 스왑 파티션이 너무 클까요?

Linux 스왑 파티션이 너무 클까요? 나는 대답이 "아니오"라고 확신하지만 이에 대한 자료를 찾지 못했기 때문에 물어보고 싶다고 생각했습니다. 이에 비해 기본 Windows 스왑 파일 pagefile.sys가 너무 클 수 있습니다. 일반적으로 인용되는 상한은 설치된 RAM의 3배입니다. 그렇지 않으면 시스템이 제대로 작동하지 않을 수 있습니다. 차이점은 Linux 가상 메모리는 컴파일 옵션은 말할 것도 없고 커널 매개변수를 통해 고도로 구성 가능하지만 Windows 가상 메모리는 거의 존재하지 않는...

Admin

FreeBSD에서 hw.pagesize 늘리기
huge-pages

FreeBSD에서 hw.pagesize 늘리기

내 서버가 불안정해요프리BSD 13. ~에서문서나는 sysctl읽을 수 있다hw.pagesize 변경할 수 없음진행되는. 이러한 유형의 주장은 커널에 따라 다르기 때문에 이것은 나에게 의미가 있습니다. 나는 또한 거기에서 읽을 수 있습니다: Some of the variables which cannot be modified during normal system oper- ation can be initialized via loader(8) tunables. This can for example ...

Admin

Linux에서 대형 페이지 관리 활성화
huge-pages

Linux에서 대형 페이지 관리 활성화

몇 가지 실험을 하고 있어요. 가상 주소 변환을 수행할 때 21비트 페이지 오프셋이 변경되지 않고 유지될 수 있도록 일부 대형 페이지(2MB)를 실험에 사용했습니다. 인터넷에서 거대한 페이지를 활성화하는 방법에 대한 몇 가지 팁을 찾았습니다. 이것은 작동합니다. 그런데 그 원리에 대해서는 잘 모르겠어서 여쭤보고 싶습니다. It requires Hugepages and assumes they are mounted on `/mnt/hugetlbfs/`. This value can be modified b...

Admin

Linux는 거대한 페이지만 사용합니다.
huge-pages

Linux는 거대한 페이지만 사용합니다.

저는 x64 Linux 시스템을 사용하고 있습니다. 보고된 페이지 크기 getconf는 4k입니다. $ getconf PAGESIZE 4096 커널이 모든 메모리 할당에 큰 페이지(2M 또는 4M)만 사용하기를 원합니다. 이로 인해 낭비되는 메모리를 처리하기에 충분한 RAM이 있다고 계산했습니다. 모든 할당에 hugepages를 사용하도록 Linux 커널을 구성하는 방법은 무엇입니까? ...

Admin

시작 시 대용량 페이지 할당의 이점
huge-pages

시작 시 대용량 페이지 할당의 이점

[StackOverflow에서 부적절해 보이는 곳으로 질문을 이동했습니다.] 커널은 default_hugepagesz=1G기본 페이지 크기를 정의하는 옵션으로 시작합니다. 따라서 애플리케이션에 대용량 메모리가 필요할 때 커널은 이를 위해 1G 페이지를 할당합니다. 커널이 부팅되면 hugepages=N부팅 시 N개의 대형 페이지가 할당됩니다. 그러면 이 경우 커널은 자동으로 이 풀에서 페이지를 가져와 메모리 할당 시간을 절약하게 됩니까? 이 풀에 사용 가능한 페이지가 부족할 때 커널은 어떻게 큰 메모리...

Admin

RHEL6에서 Oracle 18C xe용 대용량 페이지 활성화
huge-pages

RHEL6에서 Oracle 18C xe용 대용량 페이지 활성화

나는 oracle AMM에서 ASMM 거대한 페이지로 전환하려고 노력해 왔습니다. RHEL 6에서 다음과 같이 변경했습니다. /etc/sysctl.conf에 다음 항목을 추가했습니다(Hugepages_setting.sh에서 제안한 대로). vm.nr_hugepages=777 /etc/security/limits.conf에 다음 항목을 추가했습니다. oracle soft memlock 2831155 oracle hard memlock 283...

Admin

1GB 대용량 테이블 수를 어떻게 확인할 수 있나요(그리고 어떤 문서를 따라야 합니까)?
huge-pages

1GB 대용량 테이블 수를 어떻게 확인할 수 있나요(그리고 어떤 문서를 따라야 합니까)?

Ubuntu 20.04에서 KVM이 어떤 hugepages를 사용하는지 알아보려고 합니다. 2048 KiB(기본 크기) 페이지 수를 변경하면 이것이 반영되는 것을 볼 수 있습니다./proc/meminfo :~$ echo 0 |sudo tee /sys/kernel/mm/hugepages/hugepages-2048kB/nr_hugepages 0 :~$ cat /proc/meminfo | grep Huge AnonHugePages: 0 kB ShmemHugePages: 0 kB ...

Admin

투명한 거대 페이지를 동적으로 비활성화할 수 있습니까?
huge-pages

투명한 거대 페이지를 동적으로 비활성화할 수 있습니까?

비활성화하기 위해THP 우리는 모든 635 머신에서 다음을 수행했습니다 RHEL(우리는 rhel 7.5해당 버전을 갖고 있었습니다). 이 줄은 우리가 모든 컴퓨터에서 실행하는 bash 스크립트에서 가져온 것입니다. 1 단계 [[ -f /sys/kernel/mm/transparent_hugepage/enabled ]] && echo never > /sys/kernel/mm/transparent_hugepage/enabled [[ -f /sys/kernel/mm/transpa...

Admin

실험
huge-pages

실험

libhugetlbfs를 사용하여 1GiB hugepages가 포함된 다중 스레드 애플리케이션에 대한 메모리 할당을 백업하려고 합니다. 그러나 메인 스레드 할당에만 거대한 페이지가 할당됩니다. Glibc malloc 경기장의 최대 수를 1로 제한하면 모든 스레드에 대한 모든 할당이 거대한 페이지로 백업됩니다. 단일 경기장에 대한 동시 액세스에 대한 경합이 발생하므로 이는 이상적이지 않습니다. libhugetlbfs를 통해 모든 스레드가 hugepages를 사용하도록 투명하게 강제하는 방법이 있습니까...

Admin