Hello, and welcome, discorder. You don't mention what architecture or release you are using, nor what the per-process limit you are seeing actually is -- e.g., the output from $ ulimit -a.
You mention "bsh" and I assume that is a typo, as that is neither the bash shell nor any of the built-in shells.
The maximum virtual memory available is limited by the value of MAXDSIZ, found in src/sys/arch/<architecture>/include/vmparam.h along with other architecture-dependent values.
Since you're asking about multi-gigabytes of virtual memory per process, I'll assume you are interested in the amd64 architecture. MAXDSIZ for amd64 has been 8GB since OpenBSD 4.1:
Code:
#define MAXDSIZ ((paddr_t)8*1024*1024*1024) /* max data size */
The limit you are hitting may be architectural, but without more information, we may not be able to assist further.