Что использует страницу размером 1 ГБ -байт в моей системе?

Последнее не работает, потому что -execне зависит от -printf.

Но вы можете использовать xargsвместо-exec:

find. -type f -printf '%P\n' \
    | xargs -I{} aria2c -x 16 -s 1 "https://web.archive.org/save/https://{}"

Вы также можете позволить нескольким экземплярам aria2cработать параллельно с xargs -P <num>.


Еще лучше было бы создать файловый дескриптор из findв качестве входных данных для aria2вместо использования конвейеров и xargs.

aria2c -x 16 -s 1 -i <(find. -type f -printf 'https://web.archive.org/save/https://%P\n')
0
18.08.2020, 23:34
3 ответа

DirectMap — это индикатор, относящийся к пространству ядра. Кажется, вы считаете, что это похоже на огромные страницы, которые могут использоваться пользовательским пространством.

Цитирую:

DirectMap is x86-specific and gives an indication of the TLB load (Translation Lookaside Buffer), not memory use: it counts the number of pages mapped as 4KB pages, 2MB/4MB pages, and 1GB pages if supported and used.

значение аппаратного повреждения, поля DirectMap в /proc/mem

0
18.03.2021, 23:11

Я не думаю, что это полностью отвечает на вопрос, но частично.

Во время расследования я случайно -перезагрузился. При перезапуске я заметил, что DirectMap1Gне 5G -байт. Поняв, что я ничего не сделал с постоянной конфигурацией. Я заметил, что сумма трех размеров страниц в сумме составляет около 8 ГБ моей оперативной памяти. Я сложил его правильно, и это было 8G9 (8.9G )[вероятно, другой материал с отображением памяти :vRAM и другое оборудование, MMU работает не только с ОЗУ]. Затем я начал большой процесс, снова измерил, итого было еще около 8G9 (, он немного сдвинулся ). Я открыл другой процесс, измерил, открыл другой… он всегда суммируется с 8G9.

1
18.03.2021, 23:11

Записи DirectMapне отражают память используют , они отражают карты страниц или записи страниц для физической памяти. DirectMap1Gподсчитывает объем памяти, отображенной с помощью отображения таблицы страниц уровня PUD -.

Сопоставления настраиваются во время загрузки; см.arch/x86/mm/init_64.cи найдите phys_pud_initи phys_p4d_init. Сумма значений, показанных в /proc/meminfoдля различных записей DirectMap, должна быть аналогична общему объему физической оперативной памяти в вашей системе, и общее количество никогда не изменится, хотя доля будет (, например, PUD. Отображение уровня -может быть разделено на отображения уровня PMD -, что уменьшит значение, показанное в DirectMap1G, и увеличит значение, показанное в DirectMap2M).

3
18.03.2021, 23:11

Теги

Похожие вопросы