Difference between revisions of "Modding talk:Player Guide/Troubleshooting"

From Stardew Valley Wiki
Jump to navigation Jump to search
(+talkheader)
(→‎Wrong explanation on 32-bit memory space: re: only 64-bit Windows matters for this page, memory oddities in reported errors)
Line 12: Line 12:
  
 
[[User:Pepoluan|Pepoluan]] ([[User talk:Pepoluan|talk]]) 14:15, 28 May 2021 (UTC)
 
[[User:Pepoluan|Pepoluan]] ([[User talk:Pepoluan|talk]]) 14:15, 28 May 2021 (UTC)
 +
 +
: We only care about 64-bit Windows here, since players on 32-bit Windows can't use this. Both <tt>Stardew Valley.exe</tt> and <tt>StardewModdingAPI.exe</tt> are marked <tt>LARGEADDRESSAWARE</tt>, so in theory they should have access to a full 4GB of memory space. It'd be great to provide a more accurate explanation on the page, but do you know why players often report <tt>OutOfMemoryException</tt> errors with 1–3GB memory used despite having plenty of available system memory? For example, here's [https://github.com/Pathoschild/SMAPI/issues/749 an <tt>OutOfMemoryException</tt> crash on a system with 32GB of memory with 1.2GB in use by the game]. —<small>[[User:Pathoschild|Pathoschild]] ([[User talk:Pathoschild|talk]]) 15:26, 29 May 2021 (UTC)</small>

Revision as of 15:27, 29 May 2021

This talk page is for discussing Modding:Player Guide/Troubleshooting.
  • Sign and date your posts by typing four tildes (~~~~).
  • Put new text below old text.
  • Be polite.
  • Assume good faith.
  • Don't delete discussions.

Wrong explanation on 32-bit memory space

This sentence in particular:

(All 32-bit programs on your computer also need to share that 3GB block, so the game may have access to much less than 3GB.)

There's a bit of nuance that makes this sentence somewhat technically incorrect.

  • On 32-bit Windows, this is true, but only if you have increased the memory space for 'userspace' processes (by using /3GB parameter or increaseuserva parameter).
  • On 'standard' 32-bit Windows, the available block size for user processes is only 2 GiB, and yes it's shared between other programs (all 32-bit, of course, because we're running on 32-bit Windows)
  • On 64-bit Windows, this is completely false. Each and every 32-bit program has their own 4 GiB "addressable memory space", totally separate from each other (although, as before, only 2 GiB will be usable unless the program was compiled with a certain flag. As long as you have enough memory in your computer, and no misbehaving programs fully consume their memory space, then the game will be able to see -- and use -- nearly all its (2 GiB) memory space.

Pepoluan (talk) 14:15, 28 May 2021 (UTC)

We only care about 64-bit Windows here, since players on 32-bit Windows can't use this. Both Stardew Valley.exe and StardewModdingAPI.exe are marked LARGEADDRESSAWARE, so in theory they should have access to a full 4GB of memory space. It'd be great to provide a more accurate explanation on the page, but do you know why players often report OutOfMemoryException errors with 1–3GB memory used despite having plenty of available system memory? For example, here's an OutOfMemoryException crash on a system with 32GB of memory with 1.2GB in use by the game. —Pathoschild (talk) 15:26, 29 May 2021 (UTC)