Finally, I found the reason and got a speed that was more or less satisfactory (up to 60,000 RPS). I’ll write here for other people who come across this wonderful system - doing parallel bulk on dotnet Tasks or Threads under Linux is a bad idea. I got the expected speed by re-writing the program to multi-process (fork) mode, parallel bulk was created inside the processes. I note that there were no locks in the old version, i.e. talking about locks within one process is pointless. So - I wrote a solution to help other people who encounter the same problem without turning the conversation into strange assumptions about the participants in the discussion.
1 Like