For chunks generated in Minecraft 1.17.1 (and presumably older versions) and subsequently loaded using Minecraft 1.18.1, memory usage rapidly increases until the server crashes. This only happens the first time these chunks are loaded.
This is reproducible in vanilla with no mods by loading a pre-1.18 world with a large amount of generated chunks, and then causing a large amount of these old chunks to load. Although this is reproducible and has been tested to happen in a vanilla environment, a "world pregenerator" type mod which loads lots of chunks quickly is the quickest way to reproduce this issue.
This was reported to Paper as 7094, and I have debugged the source to be ChunkAccesses holding onto NoiseChunks, which hold a Blender, which references a WorldGenRegion, which of course holds a list of ChunkAccess.
The following diff solved the issue:
However I don't know enough about how and when the NoiseChunk is used to know if this is a correct solution, and as noted in this PR, it's probably best to clear the reference once the NoiseChunk is "done" being used rather than creating a new one each time getOrCreate is called, however I am not sure where/when the NoiseChunk is "no longer needed".