Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Supported by

How much memory does JATOS need?

I have been having trouble with a JATOS server running on an Azure VM through my university. We have been using an Azure B1s with 1 CPU and 1 GB RAM. I don't think the load has been particularly heavy, but it does seem to go down especially when several participants begin an experiment at the same time. I am aware of this blog post: http://blog.jatos.org/How-much-memory-does-JATOS-need/, but it was written in 2017, and JATOS, java, OpenSesame, and many other things may have changed since then. So, my question is: what are the recommended requirements for a virtual machine to run JATOS? I know this can vary a lot depending on the number of studies running, the number of participants, etc., etc, but are there any guidelines?

Thanks in advance!

Ethan

Comments

  • krikri
    edited November 2021

    Hi Ethan,

    Yes, the blog post you mention is quite old and it's on my list to write a new version of it - but my list is pretty long ...

    And it's difficult to say: there are many factors that come to play, e.g.

    • Number of users and studies
    • Number of participants that run a study in parallel
    • Do you have an extra MySQL database and do you have it installed on the same server?
    • Size of the result data or result files that are send by the studies
    • Size of the files loaded by the studies

    But as a rule of thumb:

    1. 1 GB is only enough for a small JATOS that is not used heavily. Maybe for one experiment with not many participants in parallel and the experiment doesn't use much resources. Don't use MySQL.
    2. 4 GB for a group of users with a couple of studies (2 GB can be enough if you have the database on a different host).
    3. 8 GB for a bigger installation with hundreds of users and many studies that run in parallel.

    And as an example for a bigger installation that I'm handling:

    • DigitalOcean 'Basic Droplet' with 8 GB RAM, 4 CPUs
    • An MySQL is installed on the same server sharing all resources with JATOS
    • JATOS memory usage is limited to 3 GB (-J-Xmx3G)
    • I added an extra volume for all data (MySQL's data files and JATOS' study assets, study logs, result uploads)
    • Nginx is doing the encryption together with certbot
    • More info: https://github.com/kristian-lange/ESCoP-JATOS-setup

    I hope this helps!

    Kristian

  • Thank you Kristian, this is hugely helpful, and confirms my suspicions about the trouble we’ve been having. We’ve moved to a machine with 2 GB of RAM, and so far so good, but we should probably consider something beefier in the future. Thanks so much for this full answer.

Sign In or Register to comment.