php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > PHP Developer Forum
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Fragen zu Laravel, YII oder anderen PHP-Frameworks.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 01-04-2010, 14:49
minkowski
 Registrierter Benutzer
Links : Onlinestatus : minkowski ist offline
Registriert seit: Apr 2010
Beiträge: 4
minkowski befindet sich auf einem aufstrebenden Ast
Standard bilderzeugung - memory_limit 3gb

hallo,

ich versuche im moment ein sehr großes bild (~32 megapixel) zu erstellen, in das ich dann viele kleine reinkopieren möchte.
das ganze soll natürlich nicht in einer produktivumgebung laufen, ich möchte einfach nur das große bild mit hilfe von informationen aus einer db erstellen und dann mit seadragon nutzen.

das problem:
Zitat:
Fatal error: Out of memory (allocated 1848901632) (tried to allocate 75200 bytes) in ...\map_image2.php on line 2
das memory_limit in der php.ini habe ich auf 3 gb gesetzt und der fehler kommt direkt bei imagecreatetruecolor.

hier mein (geschrumpfter) code

PHP-Code:
$image imagecreatetruecolor(1880018800);
imagedestroy($image);
echo 
'done'
bis zu einer größe von ca. 18000x18000 px funktioniert es gut und der taskmanager zeigt auch keinen großen ramverbrauch an (der steigt um höchstens 100 mb)

gibt es da noch irgendwelche internen beschränkungen, die ich übersehen habe? im forum hab ich leider nur beispiele gefunden, wo das einstellen des memory limit geholfen hat und die $x*$y*5 + $y*30 regel würde würde für das beispiel auch nur ca. 1,5 gb ergeben.

vielen dank
minkowksi
Mit Zitat antworten
freelancermap.de - IT Projektvermittlung für Selbständige und Freiberufler
  #2 (permalink)  
Alt 01-04-2010, 16:16
wahsaga
  Moderator
Links : Onlinestatus : wahsaga ist offline
Registriert seit: Sep 2001
Beiträge: 25.236
wahsaga befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von minkowski Beitrag anzeigen
das memory_limit in der php.ini habe ich auf 3 gb gesetzt
Hm, kann PHP mit so viel umgehen, und gewährt ihm auch das OS so viel?

Ich würd's erst mal mit -1 versuchen, und dann schauen, wie weit du kommst.

Zitat:
die $x*$y*5 + $y*30 regel würde würde für das beispiel auch nur ca. 1,5 gb ergeben.
Na das passt ja in etwa zu der angegebenen Größe, bei der abgebrochen wurde.


OffTopic:
Dieser Threadtitel ist einer von denen, bei denen der ich Kombination aus zwei Wörtern mit Bindestrich in er Mitte irgendwie den Vorzug vor der Zusammenschreibweise geben würde ... ich weiss auch nicht ganz, wieso.
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
Mit Zitat antworten
  #3 (permalink)  
Alt 01-04-2010, 16:42
minkowski
 Registrierter Benutzer
Links : Onlinestatus : minkowski ist offline
Registriert seit: Apr 2010
Beiträge: 4
minkowski befindet sich auf einem aufstrebenden Ast
Standard

danke für die antwort.

ich hab noch ein bisschen am memory_limit wert gedreht, aber auch 6G und -1 (bzw. -1M) bringt nix. er bricht immer ungefähr an der gleich stelle ab. wobei das interessanterweise nur ungefähr die gleich ist. es ist immer ein bisschen anders.

ob php soviel verwalten kann weiß ich nicht, da hab ich auch nix zu gefunden. es verweisen immer nur alle auf das memory_limit. und ob windows ihm soviel gibt kann ich nicht sagen, sollte es doch aber, wenn ein programm das anfordert (in meinem rechner sind zur zeit 6gb installiert - von der seite her sollte es auch kein problem sein).
Mit Zitat antworten
  #4 (permalink)  
Alt 01-04-2010, 16:49
Quetschi
 PHP Expert
Links : Onlinestatus : Quetschi ist offline
Registriert seit: Dec 2004
Beiträge: 3.134
Quetschi wird schon bald berühmt werden
Standard

Zitat:
Zitat von minkowski Beitrag anzeigen
... und ob windows ihm soviel gibt kann ich nicht sagen, ...
32-Bit oder 64-Bit-Version?

Kenn mich da nicht genau aus, aber bei 32-Bit-Windows könnte ggf. schon mit Problemen zu rechnen sein.
__________________
Ihr habt ein Torturial durchgearbeitet, das auf den mysql_-Funktionen aufbaut?
Schön - etwas Geschichte kann ja nicht schaden.
Aber jetzt seht euch bitte php.net/pdo oder php.net/mysqli bevor ihr beginnt!
Mit Zitat antworten
  #5 (permalink)  
Alt 01-04-2010, 17:04
minkowski
 Registrierter Benutzer
Links : Onlinestatus : minkowski ist offline
Registriert seit: Apr 2010
Beiträge: 4
minkowski befindet sich auf einem aufstrebenden Ast
Standard

das ist ein guter einwand. ich hab zwar ein 64-bit windows, aber vermutlich ist php 32 bit.
etwas mehr als 1 gb ist von system schon besetzt und vllt. "füllt" php den speicher dann nur bis zu 3gb auf.
da werd ich gleich mal versuchen ein 64 bit server-system aufzusetzen.
da es xampp ja nicht als 64 bit für windows gibt, gibts da ne alternative? sonst halt alles per hand...
Mit Zitat antworten
  #6 (permalink)  
Alt 01-04-2010, 17:28
PHP-Desaster
 PHP Expert
Links : Onlinestatus : PHP-Desaster ist offline
Registriert seit: Mar 2006
Beiträge: 3.105
PHP-Desaster befindet sich auf einem aufstrebenden Ast
Standard

Ich habe das bei mir mal getestet:
Code:
php -d memory_limit=3G -r "imagecreatetruecolor(18800, 18800);"
Das Skript läuft so durch. Sehr schick ist auch der Performancegraph vom Prozes************plorer dazu:
bilderzeugung - memory_limit 3gb-perf-php-bigimage.png
Mein System ist ein Windows Vista Business SP2, 3 GB RAM, 32 Bit.

Ich behaupte einfach mal, du setzt dein memory_limit nicht richtig...
Mit Zitat antworten
  #7 (permalink)  
Alt 01-04-2010, 18:24
minkowski
 Registrierter Benutzer
Links : Onlinestatus : minkowski ist offline
Registriert seit: Apr 2010
Beiträge: 4
minkowski befindet sich auf einem aufstrebenden Ast
Standard

das find ich jetzt mal verblüffend.
wenn ich die datei per
Zitat:
php -d memory_limit=3G -f map_image2.php
in der konsole ausführe, läuft es auch durch.

aber ich versteh nicht ganz, was ich mit der zeile
Zitat:
memory_limit=3G
in der php.ini falsch mache. muss ich da noch was beachten?

PS: über die 20.000 px x 20.000 px komm ich damit aber auch nicht, selbst mit 6G. werd mich wohl doch mal an der x64 version probieren
Mit Zitat antworten
Antwort

Lesezeichen

Stichworte
imagecreatetruecolor, memory_limit


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Bilderzeugung in Schleife per PHP KickASS PHP Developer Forum 4 04-01-2008 11:37
Zip :: Memory_limit sypr0 PHP Developer Forum 25 21-08-2007 12:20
Verzeichniss Bilderzeugung CodeBlue PHP Developer Forum 3 12-12-2004 16:34
memory_limit in php.ini cre8tive Fragen zu Installation & Konfiguration (LAMP, WAMP & Co.) 4 16-12-2003 13:06
dynamische Bilderzeugung und Windows JoelH PHP Developer Forum 0 13-12-2001 12:10

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

Arbeitsmanagement-Tools
Arbeitsmanagement-ToolsWarum jedes Team Arbeitsmanagement-Tools benötigt. Man schätzt, dass 25% eines durchschnittlichen Mitarbeiter-Tages durch ineffiziente Arbeit vergeudet werden.

11.12.2020 | Berni

10 Gründe, warum das Todesstern-Projekt gescheitert ist
10 Gründe, warum das Todesstern-Projekt gescheitert istDie Todesstern-Projekte sind spektakulär gescheitert. Lernen Sie von den Fehlern des Imperiums und bewahren Sie Ihre Projekte davor, der dunklen Seite der Macht zu verfallen!

24.11.2020 | Berni


 

Aktuelle PHP Scripte

ebiz-trader 6.0 - Das professionelle PHP Marktplatz Script ansehen ebiz-trader 6.0 - Das professionelle PHP Marktplatz Script

Mit unserer Lösungen können Sie nahezu jeden B2B / B2C Marktplatz betreiben den Sie sich vorstellen können. Ganz egal ob Sie einen Automarktplatz, Immobilenportal oder einfach einen Anzeigenmarkt betreiben möchten. Mit ebiz-trader können Sie Ihre Anforder

21.10.2020 Berni | Kategorie: PHP/ Anzeigenmarkt
Sendeplan Script inkl. Wunsch- und Grußbox + Kick-System + Bewerbungssystem

Das professionelle Sendeplan PHP Script inkl. Wunsch- und Grußbox + Kick-System für dein Webradio. Der übersichtliche Sendeplan bietet deinen Moderatoren und Zuhörern die perfekte Übersicht der aktuellen Shows! Du kannst nicht nur Sendungen eintragen, s

20.10.2020 drcomputer | Kategorie: PHP/ Web Radio
Newsmanager 2

Der Newsmanager 2 ist sehr Vielfältig und kann News schreiben, Newsletter versenden und RSS Feeds in einem erzeugen.

20.10.2020 Stephan_1972 | Kategorie: PHP/ News
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 18:36 Uhr.