Creating Millions Of Particles With Spheres
I found a workaround, following this post:
https://devtalk.blender.org/t/manipulating-particles-in-python/7552
I'm able to manipulate the positions of a particle system. So I created a particle system and then write in the positions. Then, I set the instance object of the particle system to be the primitive I want. I found a Nurbs sphere could work for me. In this way, I'm able to render 1 million particles with no problem.