Canton minimum and recommended requirements for PostgreSQL?

Hello team,

May I know what is the minimum and recommended requirements for Canton on DAML driver for PostgreSQL?

Thanks and regards,

Jean-Paul

1 Like

Hi Jean Paul

That depends on the workload you intend to run. As an example, Canton runs on a Rasberry PI: https://twitter.com/quid_agis_2713/status/1375385584718385154?s=20 and @bernhard ran it on his Android phone a year ago.

In that sense, weā€™re trying to keep the requirements for Canton to the level of a standard JVM application with a database to reduce deployment complexity, but also provide the option to run it in a sharded microservice setup for HA and performance (enterprise only).

On our ā€œinternal roadmapā€, we planned to provide a tool that letā€™s you run a DAML script and get sizing / cost numbers for each transaction therein. But thats not yet on the public roadmap.

Does that help?

Cheers,
Ratko

2 Likes

Thanks Ratko, it helped a lot ! :pray:

May I know if there is any recommended settings ?

Cheers,
Jean-Paul

1 Like

Hi @jaypeeda, I donā€™t think we donā€™t have any specific recommendations at this point. fwiw most of the deployments we do for typical usecases just use the default postgres docker images with no customizations.

Hi David,

I see. Do you know if Canton can run on a 128MB RAM or need at least 1GB RAM to run properly without slow down?
Does it make a huge difference to run using a 2GB RAM or a 4GB RAM or more ?

Thanks and regards,
Jean-Paul

1 Like

Hi @jaypeeda, Iā€™ve actually heard rumors of people running canton on raspberry pis and android phones, but tbh Iā€™d recommend a machine with at least 4GB of memory. For our own deployments we normally just use the standard VM images that typically start at 8GB. Of course this can all be use case dependent.

2 Likes

Well noted David!

Thank you so much @Ratko_Veprek and @davidpadbury !

1 Like

@davidpadbury I was searching for some other Canton information and saw your post.

Yes Canton Community version 0.22.0-0.27.0 will install and run on a Raspberry Pi, but as you stated available base memory is key. Canton requiring Java implies all those usual memory issues that if not managed correctly, provide sub-optimal performance.

With a 2GB RAM RPiv3, I was unable to run most of the examples, however I did not get to benchmark the performance of a ā€˜normalā€™ Daml app, something that I would write. Perhaps that is something for the future to test :thinking:

TL;DR: It works but only just :smiley:

1 Like