ну не все сеансы столько "сожрут", оно же не выделит каждому по 512Мб. По потребности будет выдавать
все гораздо хуже на один запрос он может выделить гораздо больше, это предел для одной операции в запросе. Вот что об этом говорит дока
>Заметьте, что в сложных запросах одновременно могут выполняться несколько операций сортировки или хеширования, и при этом указанный объём памяти может использоваться в каждой операции, прежде чем данные начнут вытесняться во временные файлы. Кроме того, такие операции могут выполняться одновременно в разных сеансах. Таким образом, общий объём памяти может многократно превосходить значение work_mem; это следует учитывать, выбирая подходящее значение.