Seite 1 von 1

OSError: Cannot allocate memory

Verfasst: Freitag 9. August 2019, 16:13
von Phobit
Hallo zusammen,
ich habe mir jetzt fürs programmieren Ubuntu auf ner 120GB festplatte zugelegt. Wenn ich jetzt eines meiner Skripte starte (das vorher auch schon auf ner anderen ubunut version auf der selben Platte funktioniert hat) und zu der Zeile komme:

Code: Alles auswählen

img = Image.open("file.png")
img.show()
Dann bekomme ich folgenden Error:

Code: Alles auswählen

Traceback (most recent call last):
  File "/home/phobit/PycharmProjects/PyTorch/catsanddogs.py", line 148, in <module>
    test()
  File "/home/phobit/PycharmProjects/PyTorch/catsanddogs.py", line 139, in test
    img.show()
  File "/home/phobit/PycharmProjects/PyTorch/venv/lib/python3.6/site-packages/PIL/Image.py", line 2132, in show
    _show(self, title=title, command=command)
  File "/home/phobit/PycharmProjects/PyTorch/venv/lib/python3.6/site-packages/PIL/Image.py", line 3044, in _show
    _showxv(image, **options)
  File "/home/phobit/PycharmProjects/PyTorch/venv/lib/python3.6/site-packages/PIL/Image.py", line 3050, in _showxv
    ImageShow.show(image, title, **options)
  File "/home/phobit/PycharmProjects/PyTorch/venv/lib/python3.6/site-packages/PIL/ImageShow.py", line 53, in show
    if viewer.show(image, title=title, **options):
  File "/home/phobit/PycharmProjects/PyTorch/venv/lib/python3.6/site-packages/PIL/ImageShow.py", line 73, in show
    return self.show_image(image, **options)
  File "/home/phobit/PycharmProjects/PyTorch/venv/lib/python3.6/site-packages/PIL/ImageShow.py", line 93, in show_image
    return self.show_file(self.save_image(image), **options)
  File "/home/phobit/PycharmProjects/PyTorch/venv/lib/python3.6/site-packages/PIL/ImageShow.py", line 181, in show_file
    ["im=$(cat);" + command + " $im;" "rm -f $im"], shell=True, stdin=f
  File "/usr/lib/python3.6/subprocess.py", line 729, in __init__
    restore_signals, start_new_session)
  File "/usr/lib/python3.6/subprocess.py", line 1295, in _execute_child
    restore_signals, start_new_session, preexec_fn)
OSError: [Errno 12] Cannot allocate memory
Soweit ich das aus dem Intert her verstehe bedeutet dass, das ich nicht genügend Platz habe. aber auf der 120GB platte sollte noch genügend Platz sein...?! Ist außer Standartprogrammen und IDE eigentlich nix installiert was auf 120GB hochsummieren könnte...

Re: OSError: Cannot allocate memory

Verfasst: Freitag 9. August 2019, 16:27
von sparrow
Dem Interpreter geht der Arbeitsspeicher, nicht der Festplattenspeicher, aus.

Re: OSError: Cannot allocate memory

Verfasst: Freitag 9. August 2019, 19:07
von Phobit
RAM kann eigentlich nicht ausgehen, hab 16GB und vorher lief das Programm auch einwandfrei...Weißt du was dann plötzlich 16GB Speicher belegen kann? (Oder hat Ubuntu18.04 standaertmäßig nciht alles eingestellt?)

Re: OSError: Cannot allocate memory

Verfasst: Freitag 9. August 2019, 19:27
von __blackjack__
@Phobit: Der externe Prozess zum Anzeigen kann nicht gestartet werden. Ob das nun Arbeitsspeicher oder Hintergrundspeicher ist kann man IMHO so ohne weiteres nicht sagen, aber das kannst Du ja selbst überprüfen wie die Auslastung bei Dir ist wenn das läuft.

Da wir nicht wissen was Du da sonst noch so machst, kann man schlecht sagen was das Problem ist. Und 120GB Plattenplatz heisst ja nicht, dass zum Beispiel genug unter `/tmp/` verfügbar ist.

Re: OSError: Cannot allocate memory

Verfasst: Montag 12. August 2019, 16:51
von Phobit
Da wir nicht wissen was Du da sonst noch so machst
Da läuft ein neuronales netz, dass Katzenbilder von Hundenbildern unterscheiden soll. Das Netz läufgt aber soweit nöglich via cuda auf der graka, und vorher auf dem alten rechenr konnt ich das netz nauch schon ausführen und mir das bild anzeigen lassen.

Das mit tmp kann sein, da werd ich mal nachschaun... Danke bis dahin!