Нужно понимать почему стек эффективен. Это не от того, что там как-то по особенному выделили память, а потому, как его по особому используют.
Там лежать только относительно маленькие локальные переменные. Работаешь ты только с верхушкой стека. Поэтому вся она хранится в кеш памяти. Если кеш специально раздувать (например делать вместо динамических массивов в куче массив на стеке с запасом), он утратит свою эффективность.
Так как переменные в стеке лёжат подряд, мы не может там реализовать new. А без динамических массивов особо много памяти и не нужно. Выделенного по умолчанию значения обысно хватает на все случаи жизни. Увеличивать стоит только если действительно не хватает. Но это может случиться только, например, при работе с глубокими графами.