I checked with my stuff, and the impact is much smaller than I expected.

- sokol-samples, doom-sokol and the 6502 and Z80 netlist simulations all 
work with 64KB stack (I would never have expected this tbh):

    https://floooh.github.io/sokol-html5/
    https://floooh.github.io/doom-sokol/
    https://floooh.github.io/visual6502remix/
    https://floooh.github.io/visualz80remix/

- my home computer emulators need to be bumped to 128KB stack (I'm probably 
doing something dumb in the initialization):
   https://floooh.github.io/tiny8bit/

I think I'll settle for a default stack size of 512 KBytes via a 
configurable cmake option in my build system wrapper.

Cheers!

On Wednesday, 30 November 2022 at 18:19:47 UTC+1 s...@google.com wrote:

> 3.1.27 has now been released and includes the reduction in the default 
> stack size.
>
> We do expect some folks to be affected by this and have to add 
> `-sSTACK_SIZE=XXMB` to thier link flags.   If the effect is very widespread 
> we can reconsider the rather drastic reduction.
>
> cheers,
> sam
>
> On Tue, Nov 22, 2022 at 2:36 PM Sam Clegg <s...@google.com> wrote:
>
>> Bumping this once again because I'm hoping to land the default stack size 
>> reduction change soon: 
>> https://github.com/emscripten-core/emscripten/pull/18191
>>
>> In the end I decided to put the stack first in debug builds which gives a 
>> nice, consistent, error message on stack overflow: 
>> https://github.com/emscripten-core/emscripten/pull/18154
>>
>> We also decided to go with 64KB default to match wasm-ld and wasi-sdk 
>> defaults.
>>
>> I'll post again here once/if it lands.
>>
>> cheers,
>> sam
>>
>> On Wed, Oct 12, 2022 at 6:27 PM Sam Clegg <s...@google.com> wrote:
>>
>>> emscripten_stack_get_current is also designed to be super fast (its 
>>> basically just a single `global.get` instruction).
>>>
>>> On Wed, Oct 12, 2022 at 6:26 PM Sam Clegg <s...@google.com> wrote:
>>>
>>>>
>>>>
>>>> On Wed, Oct 12, 2022 at 2:22 AM Floh <flo...@gmail.com> wrote:
>>>>
>>>>> PS: what would be *really* nice is a way to query the current and 
>>>>> 'high water mark' stack sizes (only in debug mode, or with a specific 
>>>>> build 
>>>>> option), to get an idea how much stack a program/thread is using, instead 
>>>>> of depending on trial-and-error.
>>>>>
>>>>
>>>> The current value is accessible via ` emscripten_stack_get_current` 
>>>> defined in `emscripten/stack.h`: 
>>>> https://github.com/emscripten-core/emscripten/blob/main/system/include/emscripten/stack.h
>>>>
>>>> Tracking the high water mark could be done with same binaryen pass that 
>>>> currently implement STACK_OVERFLOW_CHECK.. but it's not something we do at 
>>>> this point.
>>>>
>>>>
>>>>
>>>>> On Tuesday, 11 October 2022 at 17:27:07 UTC+2 s...@google.com wrote:
>>>>>
>>>>>> On Tue, Oct 11, 2022 at 12:13 AM Floh <flo...@gmail.com> wrote:
>>>>>>
>>>>>>> My C code is still quite stack heavy, because a lot of my code 
>>>>>>> essentially uses the stack as per-frame arena allocator ;) But I guess 
>>>>>>> as 
>>>>>>> long as there's a compiler/linker option to set the stack size I think 
>>>>>>> it's 
>>>>>>> fine.
>>>>>>>
>>>>>>> Will a stack overflow cause a proper runtime error, or will this 
>>>>>>> result 'undefined behaviour'?
>>>>>>>
>>>>>>
>>>>>> The plan is to enable `STACK_OVERFLOW_CHECK=2` in debug (-O0) builds 
>>>>>> (currently we just use `STACK_OVERFLOW_CHECK=1`).   This should give 
>>>>>> precise errors at the point of overflow.
>>>>>>
>>>>>>
>>>>>>> On Tuesday, 11 October 2022 at 01:34:07 UTC+2 s...@google.com wrote:
>>>>>>>
>>>>>>>> Bumping this discussion because I'm taking a look at landing this 
>>>>>>>> once again.
>>>>>>>>
>>>>>>>> In answer to the pthread question: Yes I'm planning on changing the 
>>>>>>>> default for both the main thread and pthreads (The plan is to make 
>>>>>>>> them the 
>>>>>>>> same by default).
>>>>>>>>
>>>>>>>> On Fri, Jul 9, 2021 at 3:24 AM 'Maksim Ivanov' via 
>>>>>>>> emscripten-discuss <emscripte...@googlegroups.com> wrote:
>>>>>>>>
>>>>>>>>> One question: Will this planned change only affect is only for the 
>>>>>>>>> main thread? In case there's no change for background threads (e.g., 
>>>>>>>>> created via pthreads), it'll be useful to mention it somewhere.
>>>>>>>>>
>>>>>>>>> On Thursday, May 27, 2021 at 2:01:11 PM UTC+2 jj wrote:
>>>>>>>>>
>>>>>>>>>> ke 19. toukok. 2021 klo 11.27 Floh (flo...@gmail.com) kirjoitti: 
>>>>>>>>>> > 1 MB is quite certainly ok (but might be a problem for code 
>>>>>>>>>> with lots of recursions?), but I think 64 KByte is asking for 
>>>>>>>>>> trouble ;) 
>>>>>>>>>>
>>>>>>>>>> Btw, I would recommend you to try how small you can go. I would 
>>>>>>>>>> be 
>>>>>>>>>> surprised if you are running into issues with 64KB today. 
>>>>>>>>>> (recursions 
>>>>>>>>>> won't increase to this limit, unless the recursing functions have 
>>>>>>>>>> locals that have their addresses taken) 
>>>>>>>>>>
>>>>>>>>> -- 
>>>>>>>>>
>>>>>>>> You received this message because you are subscribed to the Google 
>>>>>>>>> Groups "emscripten-discuss" group.
>>>>>>>>> To unsubscribe from this group and stop receiving emails from it, 
>>>>>>>>> send an email to emscripten-disc...@googlegroups.com.
>>>>>>>>>
>>>>>>>> To view this discussion on the web visit 
>>>>>>>>> https://groups.google.com/d/msgid/emscripten-discuss/d7c00f7e-6bc2-4ae8-ae2d-0353ae4cff80n%40googlegroups.com
>>>>>>>>>  
>>>>>>>>> <https://groups.google.com/d/msgid/emscripten-discuss/d7c00f7e-6bc2-4ae8-ae2d-0353ae4cff80n%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>>>>>>> .
>>>>>>>>>
>>>>>>>> -- 
>>>>>>> You received this message because you are subscribed to the Google 
>>>>>>> Groups "emscripten-discuss" group.
>>>>>>> To unsubscribe from this group and stop receiving emails from it, 
>>>>>>> send an email to emscripten-disc...@googlegroups.com.
>>>>>>>
>>>>>> To view this discussion on the web visit 
>>>>>>> https://groups.google.com/d/msgid/emscripten-discuss/7c70d4dc-d14b-4282-9a82-1c1e08393dd0n%40googlegroups.com
>>>>>>>  
>>>>>>> <https://groups.google.com/d/msgid/emscripten-discuss/7c70d4dc-d14b-4282-9a82-1c1e08393dd0n%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>>>>> .
>>>>>>>
>>>>>> -- 
>>>>> You received this message because you are subscribed to the Google 
>>>>> Groups "emscripten-discuss" group.
>>>>> To unsubscribe from this group and stop receiving emails from it, send 
>>>>> an email to emscripten-disc...@googlegroups.com.
>>>>> To view this discussion on the web visit 
>>>>> https://groups.google.com/d/msgid/emscripten-discuss/218eec81-edce-45b7-b061-a1d57f381d3an%40googlegroups.com
>>>>>  
>>>>> <https://groups.google.com/d/msgid/emscripten-discuss/218eec81-edce-45b7-b061-a1d57f381d3an%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>>> .
>>>>>
>>>>

-- 
You received this message because you are subscribed to the Google Groups 
"emscripten-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to emscripten-discuss+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/emscripten-discuss/27fb6c31-1cdb-4949-84e9-336946b6d3d6n%40googlegroups.com.

Reply via email to