mattdesl / canvas-sketch

[beta] A framework for making generative artwork in JavaScript and the browser.
MIT License
5.01k stars 393 forks source link

memory problems opening canvas-sketch #138

Open jonieldasilva opened 2 years ago

jonieldasilva commented 2 years ago

  → Writing file: sketches/2022.01.06-16.48.47.js  

[0001] info  Server running at http://192.168.100.221:9966/ (connect)
[0001] info  LiveReload running
[0001] 259ms         0B GET    200 / (generated)

<--- Last few GCs --->

[1151:0x138008000]   137694 ms: Mark-sweep (reduce) 4065.3 (4143.1) -> 4064.2 (4143.1) MB, 12183.3 / 6.1 ms  (average mu = 0.115, current mu = 0.024) allocation failure scavenge might not succeed
[1151:0x138008000]   151438 ms: Mark-sweep (reduce) 4065.2 (4143.1) -> 4064.7 (4143.9) MB, 13418.2 / 5.7 ms  (average mu = 0.069, current mu = 0.024) allocation failure scavenge might not succeed

<--- JS stacktrace --->

FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory
 1: 0x102e507a0 node::Abort() [/opt/homebrew/Cellar/node/17.3.0/bin/node]
 2: 0x102e517a0 node::OnFatalError(char const*, char const*) [/opt/homebrew/Cellar/node/17.3.0/bin/node]
 3: 0x102fa8920 v8::Utils::ReportOOMFailure(v8::internal::Isolate*, char const*, bool) [/opt/homebrew/Cellar/node/17.3.0/bin/node]
 4: 0x102fa88b4 v8::internal::V8::FatalProcessOutOfMemory(v8::internal::Isolate*, char const*, bool) [/opt/homebrew/Cellar/node/17.3.0/bin/node]
 5: 0x1030f86b8 v8::internal::Heap::EnsureFillerObjectAtTop() [/opt/homebrew/Cellar/node/17.3.0/bin/node]
 6: 0x1030fa888 v8::internal::Heap::ComputeMutatorUtilization(char const*, double, double) [/opt/homebrew/Cellar/node/17.3.0/bin/node]
 7: 0x1030f8eec v8::internal::Heap::PerformGarbageCollection(v8::internal::GarbageCollector, v8::GCCallbackFlags) [/opt/homebrew/Cellar/node/17.3.0/bin/node]
 8: 0x1030f715c v8::internal::Heap::CollectGarbage(v8::internal::AllocationSpace, v8::internal::GarbageCollectionReason, v8::GCCallbackFlags) [/opt/homebrew/Cellar/node/17.3.0/bin/node]
 9: 0x1031040a4 v8::internal::Heap::AllocateRawWithLightRetrySlowPath(int, v8::internal::AllocationType, v8::internal::AllocationOrigin, v8::internal::AllocationAlignment) [/opt/homebrew/Cellar/node/17.3.0/bin/node]
10: 0x103104124 v8::internal::Heap::AllocateRawWithRetryOrFailSlowPath(int, v8::internal::AllocationType, v8::internal::AllocationOrigin, v8::internal::AllocationAlignment) [/opt/homebrew/Cellar/node/17.3.0/bin/node]
11: 0x1030dbbbc v8::internal::Factory::NewFillerObject(int, bool, v8::internal::AllocationType, v8::internal::AllocationOrigin) [/opt/homebrew/Cellar/node/17.3.0/bin/node]
12: 0x103390e54 v8::internal::Runtime_AllocateInYoungGeneration(int, unsigned long*, v8::internal::Isolate*) [/opt/homebrew/Cellar/node/17.3.0/bin/node]
13: 0x102cc62ec Builtins_CEntry_Return1_DontSaveFPRegs_ArgvOnStack_NoBuiltinExit [/opt/homebrew/Cellar/node/17.3.0/bin/node]
14: 0x102c5a904 Builtins_StringSubstring [/opt/homebrew/Cellar/node/17.3.0/bin/node]
15: 0x109799360 
16: 0x10975f930 
17: 0x102cd9028 Builtins_ArrayForEach [/opt/homebrew/Cellar/node/17.3.0/bin/node]
18: 0x109777e48 
19: 0x109916068 
20: 0x109709a20 
21: 0x102c58cac Builtins_JSEntryTrampoline [/opt/homebrew/Cellar/node/17.3.0/bin/node]
22: 0x102c58944 Builtins_JSEntry [/opt/homebrew/Cellar/node/17.3.0/bin/node]
23: 0x103094b84 v8::internal::(anonymous namespace)::Invoke(v8::internal::Isolate*, v8::internal::(anonymous namespace)::InvokeParams const&) [/opt/homebrew/Cellar/node/17.3.0/bin/node]
24: 0x103094184 v8::internal::Execution::Call(v8::internal::Isolate*, v8::internal::Handle<v8::internal::Object>, v8::internal::Handle<v8::internal::Object>, int, v8::internal::Handle<v8::internal::Object>*) [/opt/homebrew/Cellar/node/17.3.0/bin/node]
25: 0x102fbf6f0 v8::Function::Call(v8::Local<v8::Context>, v8::Local<v8::Value>, int, v8::Local<v8::Value>*) [/opt/homebrew/Cellar/node/17.3.0/bin/node]
26: 0x102d8a938 node::InternalCallbackScope::Close() [/opt/homebrew/Cellar/node/17.3.0/bin/node]
27: 0x102d8b1b8 node::InternalMakeCallback(node::Environment*, v8::Local<v8::Object>, v8::Local<v8::Object>, v8::Local<v8::Function>, int, v8::Local<v8::Value>*, node::async_context) [/opt/homebrew/Cellar/node/17.3.0/bin/node]
28: 0x102da59a4 node::AsyncWrap::MakeCallback(v8::Local<v8::Function>, int, v8::Local<v8::Value>*) [/opt/homebrew/Cellar/node/17.3.0/bin/node]
29: 0x102e55cbc node::fs::FSReqCallback::Resolve(v8::Local<v8::Value>) [/opt/homebrew/Cellar/node/17.3.0/bin/node]
30: 0x102e57054 node::fs::AfterStat(uv_fs_s*) [/opt/homebrew/Cellar/node/17.3.0/bin/node]
31: 0x10518b8c0 uv__work_done [/opt/homebrew/Cellar/libuv/1.43.0/lib/libuv.1.dylib]
32: 0x10518ec38 uv__async_io [/opt/homebrew/Cellar/libuv/1.43.0/lib/libuv.1.dylib]
33: 0x10519e458 uv__io_poll [/opt/homebrew/Cellar/libuv/1.43.0/lib/libuv.1.dylib]
34: 0x10518f058 uv_run [/opt/homebrew/Cellar/libuv/1.43.0/lib/libuv.1.dylib]
35: 0x102d8ba1c node::SpinEventLoop(node::Environment*) [/opt/homebrew/Cellar/node/17.3.0/bin/node]
36: 0x102e8e0ec node::NodeMainInstance::Run(int*, node::Environment*) [/opt/homebrew/Cellar/node/17.3.0/bin/node]
37: 0x102e8dd40 node::NodeMainInstance::Run(node::EnvSerializeInfo const*) [/opt/homebrew/Cellar/node/17.3.0/bin/node]
38: 0x102e1e464 node::Start(int, char**) [/opt/homebrew/Cellar/node/17.3.0/bin/node]
39: 0x1050d90f4 
zsh: abort      canvas-sketch --new --template=three --open
mattdesl commented 2 years ago

I haven't seen memory issues recently, if anybody sees something like this again please let me know, especially if there is a way to reproduce.