PHP - chcem vela RAM

Programovacie jazyky, rady, poradňa...
chmirko
Expert
Expert
Používateľov profilový obrázok
Príspevky: 182
Registrovaný: 05 sep 2008, 15:56
Kontaktovať používateľa:

PHP - chcem vela RAM

Príspevok od používateľa chmirko »

Zdravim, mam nejaky PHP script a potrebujem ho spustit na lokale

je velmi RAM Hungry,
ked si zoberie 2GB tak je zabitý,

cez Apache to hádže

Kód: Vybrať všetko

[error] [client 127.0.0.1] FATAL:  emalloc():  Unable to allocate 2424 bytes
no a keď spustím script priamo - presuniem php súbor na php-cgi.exe

tak to tiež skončí po naalokovaní 2GB

otázka je, ako dosiahnúť že mi to OS nechá prebehnúť, prípadne aj naswapuje, proste aby to mohlo zožrať vela - najlepšie nech ja môžem určiť číslo

mám možnosť spúštať skript na WinXP, Vista, Seven RC, Linux Ubuntu
32 bit architektúra

na všetkých OS nakonfigurované PHP cez Apache

nepotrebujem výstup do browsera, takŽe Apache kludne obídem, len aby sa to dalo spustiť a prebehlo s velko spotrebou RAM (a nechce sa mi prepisovaŤ script aby používal ako uložisko disk)

pre rady pod linuxom eŠte poprosím radu ako spustím php súbor v php interpreteri

Predom díki za rady

(počítam s tím že script presiahne velkosť ram a pôjde do swapu, ktorý má systém dostatočný)
ppt
Darca
Darca
Používateľov profilový obrázok
Príspevky: 1920
Registrovaný: 27 máj 2006, 11:24
Kontaktovať používateľa:

Príspevok od používateľa ppt »

co to mas za script, ze robi take narocne operacie? Neda sa to radsej spravit tak, ze spravis iny program (nie v PHP), ktory prepojis s PHP (aby si odoslal vystup do prehliadaca)?
chmirko
Expert
Expert
Používateľov profilový obrázok
Príspevky: 182
Registrovaný: 05 sep 2008, 15:56
Kontaktovať používateľa:

Príspevok od používateľa chmirko »

tak to napisem znv
NEPOTREBUJEM to do prehliadca

script mi to dava tam kam potrebujem, akurat je to PHPscript

teda som ho povodne spustal pomocou prehlaidca, mozem ho psustit aj drag&drop na php-cgi.exe

no a nechce sa mi ten script prepisovat, potrebujem mu povolit vela ram a hotovo


ak k vyrieseniu mojho problemu pomoze odpoved na otazku "aky je to script?" tak je to frontalny bruteforce zo zlozitostou (pamäťovou aj časovou) 5^n s nejakym tim orezvnim
chrono
VIP
VIP
Používateľov profilový obrázok
Príspevky: 7127
Registrovaný: 25 dec 2006, 15:17

Príspevok od používateľa chrono »

Problém môže byť tá 32b architektúra (ak máš v php povolené alokovať neobmedzené množstvo pamäte). Štandardne je tuším pamäť vo Windowse rozdelená na 2GB/2GB (aplikácie/systém). Pomocou prepínača /3GB sa dá nastaviť, aby to rozdelenie bolo 3GB/1GB (v Linuxe je štandardné rozdelenie práve 3GB/1GB).
Ak ale bude aj 3GB málo, budeš musieť použiť 64b OS, alebo (čo je asi lepšie), budeš musieť ten algoritmus nejako upraviť.

Inak ak chceš v Linuxe používať php cez konzolu, potrebuješ balík php-cli (presný názov ale záleží od použitej distribúcie).
Napísať odpoveď