Freeswitch - very processor hungry!

I want to use FreeSWITCH solely as a T.38 modem on a Windows server. I have a Lua script that accepts fax calls and, at the end of each call, saves the call information to a file for my software to process.
However, with around 100 sessions, FreeSWITCH maxes out the CPU of a t3.xlarge AWS instance. In contrast, I have a closed-source third-party T.38 modem software that, even with 300 sessions, barely affects the CPU usage of the same t3.xlarge machine.
Are there specific modules I should disable to make FreeSWITCH lighter? Do I need to run it on Linux? My concern is that if it’s so CPU-intensive on Windows, even if Linux performs better, it still doesn’t seem very efficient.

Any advice would be greatly appreciated!

Running FreeSWITCH on Debian is certainly recommended over Windows. You should only run the modules that you are planning on using.