Welcome to the forum @matrs, and thanks for asking about this/troubleshooting:
Yes, this behavior is (unfortunately) expected — the reason is that each core is storing a separate copy of the classifier in memory, hence the rapid memory consumption at the start of each job. The solution is as you have discovered: either reduce the number of jobs or increase the memory available to each job (if possible).
The SILVA database is also quite large and consumes a great deal of memory. Using Greengenes or another smaller database will require around 4X less memory.