The short answer is yes, there is an ineffective memory usage if you are using PM2 or Cluster module as they use process forking instead taking advantages of multithreading.
In your case, the problem is that the worker pool is being created inside the app instance which may lead to some ineffectiveness in memory usage(I think it maybe negligible if pool is configured adequately taking into consideration app instances).
You may create another separate node simple app just for handling crypto tasks like a microservice and start it before running app cluster. The cluster workers may communicate with it through some IPC message protocol or better use GRPC/REST.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…