Optimum PC resources for Oxygen, e.g. multi-core / cache / memory

Oxygen general issues.
Jennifer
Posts: 5
Joined: Wed Nov 30, 2011 7:49 pm

Optimum PC resources for Oxygen, e.g. multi-core / cache / memory

Post by Jennifer »

Hello folks - looking for some info & advice please!

I'm about to upgrade my PC. Most of what I do on it is simple stuff like writing emails, so Oxygen's transforms are the place I most notice the current one's slowness. So for "best speed for same power", someone suggested that it might be worth finding out about Oxygen's resource use, and let that guide my choice. E.g. whether it benefits from multiple CPU cores or any particular kind of CPU cache; optimal & reasonable amounts of memory to have; or anything else you can tell me about what Oxygen likes in a computer :-)

I realise that this may have more to do with Java than it does with Oxygen itself, but I'm guessing that people here are likely to know some of the answers, or where to look for them.

I'm currently on an old version of Oxygen (think it's about v8, can't check easily right now as machine is down), but will probably upgrade at some point. So I'm interested in both the current and the earlier versions, if there's a difference in how they use the computer's resources. OS is Ubuntu Lucid Lynx.

Thanks in advance for anything you can tell me!

Jennifer
adrian
Posts: 2855
Joined: Tue May 17, 2005 4:01 pm

Re: Optimum PC resources for Oxygen, e.g. multi-core / cache / memory

Post by adrian »

Hello,

Oxygen is a Java application, so general Java guidelines apply, but there are a few Oxygen specific things.

CPU
Cores
Oxygen has a lot of editing helpers(content completion, validation, etc) that each use a thread, so you will definitely benefit from having multiple cores.
The biggest difference in performance appears when switching from a single core to a dual core CPU, but even a quad core can still improve performance a bit. I'd say a CPU with 2 cores and 4 threads(Hyper-threading) would probably be enough for Oxygen.

Cache
The cache size doesn't matter that much for Oxygen(or desktop applications in general), so a larger cache will probably have a small improvement in performance(maybe 2 - 5%).

Frequency
The frequency is the most important, even more important than the number of cores(when having 2 or more cores). When comparing CPUs from the same generation, you will get better performance in Oxygen from a dual core CPU with a very high frequency rather than a quad core with low frequency. This is because most simple operations in Oxygen are single threaded, so unless a few overlap, you won't benefit from more than 2 cores.
e.g. quad core 2.4Ghz will perform slightly lower than dual core 3ghz (same generation CPUs)

To complicate things, some of the modern CPUs have a Turbo feature which increases the frequency of the CPU well above the one specified.

It's difficult to recommend a specific CPU, but I'd recommend something running at more than 2Ghz with a Turbo frequency of 2.7Ghz or more(usually found in notebooks/laptops). If no Turbo is available, I'd recommend something above 2.7Ghz. Only go for a quad core if you can afford it, generally 2 cores/4 threads CPUs are enough.


RAM
DDR3 RAM is so cheap nowadays that I'd recommend going for 8GB, though 4GB should be enough for most.

The 32-bit edition of Oxygen can only use a maximum of 1.2 - 1.4GB of Java memory/heap. This usually results in a system memory usage of 1.7 - 2.0GB.
The 64-bit edition of Oxygen can use about any amount of memory you can throw at it. I would recommend not going overboard, never give it more than half of your system memory. e.g. -Xmx2048m for 4GB of memory.

In both cases(32/64 bit) you can change the amount of memory available to Oxygen by adjusting the value of the -Xmx argument in the .vmoptions file(or .sh script if you start it with that). But only do this if you are working with very large files.

Use a 64-bit OS, the 32-bit OSes are limited to 4GB of RAM(even lower, ~3GB) for some systems.

v8 wasn't really written with multi-core CPUs in mind so it will probably not scale so well, but the increase in CPU frequency should have a big impact.

Let me know if you have additional questions.

Regards,
Adrian
Adrian Buza
<oXygen/> XML Editor, Schema Editor and XSLT Editor/Debugger
http://www.oxygenxml.com
Jennifer
Posts: 5
Joined: Wed Nov 30, 2011 7:49 pm

Re: Optimum PC resources for Oxygen, e.g. multi-core / cache / memory

Post by Jennifer »

Just the sort of info I had in mind, thanks! Feel like I'm getting my bearings now.

Today's researches have pointed me towards waiting another 6 months or so for Intel's "Ivy Bridge" CPUs to appear and settle in. It looks as though those are going to achieve a noticeably better speed-per-watt than most things out now. So I'll bookmark this thread for now, and come back with anything that arises when I get to the detail of specific CPUs. Meanwhile thanks again, & hope the answer here's useful to other people too.
Post Reply