How much Memory/CPU for a HMI with sqlexpress

Hi,

Since I’m not familiar with the performance of Ignition just yet, I would like to find out more about the performance I need for a project that we have.

We are going to use Ignition to for HMI that will use a panel pc. The idea is to use perspective with the gateway on the pc itself and sqlexpress, all installed on the panel pc itself. This it to keep it simple for the customer. It will run on windows 11 IoT

It’s going to control a machine, to keep track of what it does, recipie handling, logging and minor reporting.

Plan is to use perspective in kiosk mode. Running in windows 11 IoT
Backup to external disk / network for database and also for the windows installation itself using veeam agent.

128 GB ssd seems to be standard and that should be fine.
CPU?
Memory?

Any thing else?

Think we’ll go for a 21” screen since all is done on the panel pc.

Good general info here

https://forum.inductiveautomation.com/t/microsoft-virtual-machine-suggestion/86787/5

The biggest consideration is how many perspect clients will you have as the server bears the load (as opposed to vision where each clients resources are utlized to run their client).

1 Like

Keep in mind that if you're looking to use Edge, it does not support database connections. It does use a built in historian and audit log that stores to built in databases but does not allow connections to other databases.

2 Likes

I’ve utilized a Core i7 (10700T) with not-less-than 16GB RAM for pseudo-similar builds (20,000 tags, 5 devices).

1 Like

Good to keep in mind that Edge can’t handle the database, but we will not use edge.

Good point with the clients, since we are not a 100% sure how they would like the system to be in the future we should take that into consideration.

It sounds like your intention is to have the database, the gateway, and the client all running on the same machine. I would recomend against that strategy. The small headache of managing mulitple machines (virtual or otherwise) is much prefered imo to the larger headache of poor performance and memory thrashing. The setup complexity between mulitple machines and a signle one is just not significant enough.

Also, keep in mind that sqlexpress has a 10GB storage limit. If a free or low cost solution is what you're looking for, consider something like postgresql which is free but doesn't have the limitations.

3 Likes

I can’t imagine in an HMI application that there would be a big load using sqlexpress on the same PC.

That said, you will want to:

  • allocate the memory right away for the Ignition JVM thrugh the ignition.config file.
  • Set the max server memory option in SQL Server. (~75% of free memory not used by other processes.)

10 GB will be more than plenty for the SQL, reason why we will use sqlexpress is that it will be an easy transition to move to ms sql standard on a separate server with sync to azure later on if we see the need for it.

Nothing is set in stone and we may change to use different setup, but using this way will ensure that we can provide what is needed out of the box without dependence from any external IT.

SQL Express 2016 and newer that is a per DATABASE limit, not an overall limit.

2 Likes