Multithreading is about threads, not cores. You are thinking of Multicore support, where it runs on multiple cores. Multithreading and Multicore are two VERY different issues. Most computer cores can have more than one thread per core. Most computers these days have at least two cores. A program can support multi-core without supporting multi-thread. At the same time a program can support multi-thread without supporting multi-core. Most games support dual core or multi-core support, but very few games offer multi-threading support, mostly because threading a game can be a nightmare code-wise. Also, for reference, when people talk about multi-core support they are generally implying 3+ cores, because people think of cores in three ways: Single Core, Dual Core, Multi-Core. CPU Cores are hardware, whereas CPU Threads are software.
Link explaining threads =
http://en.wikipedia.org/wiki/Thread_(computing) [They are controlled and created by the Operating System, which is software]
For example: I have a Quad Core computer with 2 threads per core. I have 4 cores and 8 threads.
Now, as to the engine optimizations, it is clear outdoor sections are the culprit. What is plausible is that AH is using the same rendering Engine that GR1 used, and therefore any flaws in that engine would have been copied over to GR2. Now, in Dungeon Sections, there is no noticeable problems, however in outdoor sections there is problems. So a "critical flaw" in the old rendering engine might not have been detected because the game in GR1 was all dungeon based with no outdoor sections. So, it is likely that they would find the problem by looking at any code they borrowed from GR1 from the Rendering Engine.
If its a matter of objects, the question is why are the objects consuming so many resources? If its not the objects, but it is the water, why is the water consuming so many resources? If its not the water, then what about the fog effects (my worst framerates was in the Graveyard), why is the fog effects consuming so many resources? Or is it a combination of these? Or is it the skybox?
The best way for AH to determine the problem is to input "debug" code into specific parts of the renderer and have that information outputted to a file. Alternatively, AH did mention in a blog that they were using a program to note down the resources being used in a section; they could use that to pinpoint specific issues. Alternatively, perhaps some exception handling may be appropriate. Or perhaps the problem is in the Main Event Loop, and thus they should implement debug code for loops to try and find bottlenecks. There are ways for them to figure out answers far more easily than for us to do experiments and far more quickly at that.