sysctl kern.bufcachepercent не работают в OpenBSD 5.2 выше 1.7 ГБ?

Это происходит потому что ~ не был расширен. Ваша оболочка знает, как иметь дело с этим, но which не делает (ни был бы большинство других программ). Вместо этого сделайте:

export "PATH+=:$HOME/Unix/homebrew/bin"

С другой стороны, прекратите использовать which, и используйте (почти всегда выше) type -p.

Вот демонстрация проблемы:

$ echo "$PATH"
/usr/local/bin:/usr/bin:/bin
$ export "PATH+=:~/git/yturl"
$ yturl
Usage: yturl id [itag ...]
$ which yturl
$ type -p yturl
/home/chris/git/yturl/yturl
$ export "PATH=/usr/local/bin:/usr/bin:/bin:$HOME/git/yturl"
$ which yturl
/home/chris/git/yturl/yturl

Примите во внимание что некоторые другие программы тот взгляд на $PATH может не понять значение ~ также, и возьмите его в качестве части относительного пути. Это более портативно для использования $HOME.

4
16.01.2013, 08:57
3 ответа

Я сделал некоторое тестирование, и оно походит в моей системе, эквивалент 100% buffercache составил бы приблизительно 2.8 ГБ (я попробовал 75%, и я использовал приблизительно 2.1 ГБ для кэша), таким образом, процент вынут из значения, подобного приблизительно 2,7 или 2.8 ГБ (оно могло бы зависеть от системы / BIOS и т.д.).

Казалось бы, что это связано с кэш-буфером, ограничиваемым 32 битами памяти DMA, и скорее всего даже при 100% установки, упомянутая память вынута из пула, который совместно используется с другими ресурсами ядра, таким образом, процент всегда был бы вне числа вполне значительно ниже 4 ГБ в любой системе, это кажется.

http://www.openbsd.org/cgi-bin/cvsweb/src/sys/kern/vfs_bio.c
http://marc.info/?l=openbsd-tech&m=130174663714841&w=2

0
27.01.2020, 21:06
  • 1
    Последнее обсуждение с 14.02.2016, marc.info/? l=openbsd-misc&m=145550665826831&w=2, имеет его, что некоторое изменение вышеупомянутой работы фиксировалось 11.06.2013, только чтобы отступиться 09.07.2013, и затем 19.07.2015 частичное переопределение фиксировалось снова, представляя bxr.su/o/sys/kern/vfs_bio.c#buf_flip_high, но никакое фактическое зеркальное отражение еще не сделано, таким образом, с 14.02.2016, кэш-буфер все еще, кажется, ограничен 32 битами памяти DMA. –  cnst 15.02.2016, 05:50
  • 2
    С 16.08.2017, это похоже vfs_bio.c#buf_flip_high мог бы наконец делать что-то и судить CVS, аннотируют, похоже, что в изменении выполнили vfs_bio.c#rev1.181 16.04.2017, таким образом, если это не отступится снова, это могло бы наконец появиться в в OpenBSD 6.2. (Что касается OpenBSD 6.1, buf_flip_high() в нем все еще имел, "не делает ничего для буферизации на данный момент" комментария.) –  cnst 16.08.2017, 23:56

Нет, кэш не ограничен ничем как 1,7 ГБ. Это кажется, что у Вас есть много маленьких файлов на Вашей машине - если numvnodes полны, никакое дополнительное пространство не может использоваться для дискового кэша. Можно попытаться увеличить numvnodes еще больше, или можно попытаться искать/перерывать большой файл.

0
27.01.2020, 21:06
  • 1
    400k vnodes является большим количеством vnodes и больше, чем количество файлов, что я требую кэширования! Я не уверен, что vnodes виноваты, и я также не уверен, что vnode и bufcache настройки на самом деле связаны: Я думал бы, что, даже если бы у меня заканчивается vnodes, они были бы потенциально воссозданы от bufcache данных вместо данных диска (однако, я не знаком с кодом, таким образом, я мог бы быть неправым). Josh Blair –  cnst 22.01.2013, 18:48

Обратите внимание, что начиная с OpenBSD 5.6 или 5.7, "буферный кэш" OpenBSD (он же кэш оперативной памяти диска ОС/файловой системы и т.д.) НЕ больше не имеет ограничения 32bit/~3GB, смотрите это сообщение ML и тему для дополнительной информации:

http://marc.info/?l=openbsd-misc&m=145542727812528&w=2

http://marc.info/?t=145538710500002&r=1&w=2

Так что это изменилось с тех пор, как другой постер предложил это в январе 2013 года, что действительно было ~6 месяцев до того, как это ограничение было снято.

Я полагаю, что настройка numvnodes все еще может иметь влияние на обсуждаемую здесь тему, я еще не изучал этот вопрос, но просто хотел сделать это замечание о буферном кэше (так как это сообщение является одной из немногих страниц во всем интернете, где обсуждается эта возможность в OpenBSD).

0
27.01.2020, 21:06

Теги

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