Автор Тема: Памет  (Прочетена 3353 пъти)

yavorpap

  • Напреднали
  • *****
  • Публикации: 15
    • Профил
Памет
« -: Dec 04, 2008, 17:31 »
Здравейте,
Ползвам Xubuntu за да подкарам програма, за която не е ясно какви ресурси ще са необходими.
Със сигурност знам, че 2-та ГБ РАМ, които имам не са достатъчни. Имам над 100ГБ свободен хард, 90ГБ swap partition, разцепен на 2 - 64ГБ + 26ГБ, но въпреки това програмата ми дава:
std::bad_alloc
swap-ът е почти празен и изглежда не се ползва почти никак. Задал съм swappiness 100. Какво друго мога да направя?
Активен

tarator

  • Напреднали
  • *****
  • Публикации: 849
    • Профил
Re: Памет
« Отговор #1 -: Dec 04, 2008, 17:52 »
Оправи програмата. Ако не й стигат 2ГБ, значи е счупена :)
Активен

A gentleman is one who is never rude unintentionally. - Noel Coward

yavorpap

  • Напреднали
  • *****
  • Публикации: 15
    • Профил
Re: Памет
« Отговор #2 -: Dec 04, 2008, 19:06 »
Програмата е наред, направена е да работи така и така е очакваното поведение... за оптимизация на алгоритъма откъм памет едва ли може да става дума в такива размери
Активен

tarator

  • Напреднали
  • *****
  • Публикации: 849
    • Профил
Re: Памет
« Отговор #3 -: Dec 04, 2008, 20:19 »
И колко памет иска програмата? Всеки програмист, който прави програма, която очаква суап за да работи, трябва да бъде изритан и името му публикувано в Интернет за да не го наема никой друг :)
Активен

A gentleman is one who is never rude unintentionally. - Noel Coward

yavorpap

  • Напреднали
  • *****
  • Публикации: 15
    • Профил
Re: Памет
« Отговор #4 -: Dec 04, 2008, 22:44 »
Програмата е с изследователска цел, а не с цел да се използва масово; целта е ВЕДНЪЖ да проработи, след което вече няма значение...
Активен

tarator

  • Напреднали
  • *****
  • Публикации: 849
    • Профил
Re: Памет
« Отговор #5 -: Dec 04, 2008, 23:33 »
Е, очевидно не работи :) И аз пиша изследователски програми, но не са им нужни десетки гигабайти памет. Тук има хора, чиито програми използват петабайти данни, но си работят нормално с по-малко от 2ГБ :)

Просто кажи на програмиста да се научи да пише грамотно, ще му е от полза.
Активен

A gentleman is one who is never rude unintentionally. - Noel Coward

gat3way

  • Напреднали
  • *****
  • Публикации: 6050
  • Relentless troll
    • Профил
    • WWW
Re: Памет
« Отговор #6 -: Dec 04, 2008, 23:46 »
Явно въпросният програмист много обича да прекалява с mlock() :) Иначе няма друго достоверно обяснение на тези дивотии :)
Активен

"Knowledge is power" - France is Bacon

tarator

  • Напреднали
  • *****
  • Публикации: 849
    • Профил
Re: Памет
« Отговор #7 -: Dec 05, 2008, 00:29 »
Съмнявам се, че знае какво е mlock, иначе не би написал програмата толкова идиотски :)
Аз бих предположил, че някой се опитва да използва програмата на 32-битова машина :)
« Последна редакция: Dec 05, 2008, 01:23 от tarator »
Активен

A gentleman is one who is never rude unintentionally. - Noel Coward

Gaara

  • Напреднали
  • *****
  • Публикации: 631
  • Distribution: Debian
  • Window Manager: E17
    • Профил
Re: Памет
« Отговор #8 -: Dec 05, 2008, 11:59 »
Здравейте,
Ползвам Xubuntu за да подкарам програма, за която не е ясно какви ресурси ще са необходими.
Със сигурност знам, че 2-та ГБ РАМ, които имам не са достатъчни. Имам над 100ГБ свободен хард, 90ГБ swap partition, разцепен на 2 - 64ГБ + 26ГБ, но въпреки това програмата ми дава:
std::bad_alloc
swap-ът е почти празен и изглежда не се ползва почти никак. Задал съм swappiness 100. Какво друго мога да направя?

Може ли само да попитам за 90ГБ swap?
Честно, за първи път виждам такова нещо и не знам каква му е идеята :(
Активен

Last night, Darth Vader came down from planet Vulcan and told me that if you don't install Debian, he'd melt your brain.

Genetix

  • Гост
Re: Памет
« Отговор #9 -: Dec 05, 2008, 23:27 »
Оправи програмата. Ако не й стигат 2ГБ, значи е счупена :)

За какво им са на хората супер компютри щом на всяка програма дето не и стигат 2 ГБ рам е счупена

направи си извода
Активен

laskov

  • Напреднали
  • *****
  • Публикации: 3170
    • Профил
Re: Памет
« Отговор #10 -: Dec 05, 2008, 23:47 »
За какво им са на хората супер компютри щом на всяка програма дето не и стигат 2 ГБ рам е счупена
направи си извода
Аз пък ще си направя суапа 218 гб и ще си направя компютъра супер, и с 2-та рам ще станат 220 .... и-и-и ще си включа печката в него!
Активен

Не си мислете, че понеже Вие мислите правилно, всички мислят като Вас! Затова, когато има избори, идете и гласувайте, за да не сте изненадани после от резултата, и за да не твърди всяка партия, че тя е спечелила, а Б.Б. (С.С., ...) е загубил, а трети да управлява.  Наздраве!  [_]3

tarator

  • Напреднали
  • *****
  • Публикации: 849
    • Профил
Re: Памет
« Отговор #11 -: Dec 06, 2008, 00:03 »
Genetix,

Не знаеш нищо за суперкомпютрите освен че са супер, нали? :) Я кажи на кой от суперкомпютрите от Top500, node-овете има повече от, да кажем 8GB памет? :) RoadRunner (No. 1) има 8ГБ на Оптероните и 8ГБ на Cell blade-овете. Jaguar (No. 2) има 8ГБ на node. BG/P-тата имат по 2ГБ.

Суперкомпютрите се състоят от много, сравнително слаби компютри.
Активен

A gentleman is one who is never rude unintentionally. - Noel Coward

gat3way

  • Напреднали
  • *****
  • Публикации: 6050
  • Relentless troll
    • Профил
    • WWW
Re: Памет
« Отговор #12 -: Dec 06, 2008, 00:14 »
Ако наистина имаш машина с 2 гигабайта рам и 200 гигабайта суоп и наистина вземеш че утилизираш суоп-а на близо 100%, значи само от тези 2 гигабайта оперативна памет ще ти заминат около 200 мегабайта за pagetables (или около 400 мегабайта ако ползваш PAE). Голяма красота, това ще е уникална система - такава, на която 20% от оперативната й памет отиват за нуждите на транслация на виртуални адреси от процесора. Това е случай, за който ме съмнява дори разните големи глави някога да им е хрумвало, звучи забавно :) Разните системни архитекти при това положение могат да решат, че TLB кеша е безсмислено скъпо удоволствие - така или иначе достъпването на по-голямата част от виртуалните адреси ще завършва с page fault и вадене на страници от суоп-а.
Активен

"Knowledge is power" - France is Bacon

tarator

  • Напреднали
  • *****
  • Публикации: 849
    • Профил
Re: Памет
« Отговор #13 -: Dec 06, 2008, 00:25 »
Все пак зависи какъв ти е access pattern-а, има варианти при които TLB кеша все пак ще помага :)
Активен

A gentleman is one who is never rude unintentionally. - Noel Coward

gat3way

  • Напреднали
  • *****
  • Публикации: 6050
  • Relentless troll
    • Профил
    • WWW
Re: Памет
« Отговор #14 -: Dec 06, 2008, 00:36 »
Мхм, обаче има и друг проблем. Няма да остане процесорно време от хищното kswapd :)
Активен

"Knowledge is power" - France is Bacon