PL/pgSQL memory consumption?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi there,

I have recently found a nice utility called memstat (which shows how
much of private
(not shared)) memory each process uses.  What kind of surprised me was
the amount
of memory that is used by PL/pgSQL (one more reason not to provide it
by default? ;-)).

For example:
# sysctl -w|grep plpgsql.so|head -6
  39048k: PID 23814 (/usr/lib/postgresql/8.2/lib/plpgsql.so)
  38972k: PID 23815 (/usr/lib/postgresql/8.2/lib/plpgsql.so)
  39048k: PID 23817 (/usr/lib/postgresql/8.2/lib/plpgsql.so)
  39048k: PID 23822 (/usr/lib/postgresql/8.2/lib/plpgsql.so)
  39048k: PID 23825 (/usr/lib/postgresql/8.2/lib/plpgsql.so)
  39048k: PID 23835 (/usr/lib/postgresql/8.2/lib/plpgsql.so)

Its an x86_64 platform, memory settings are:
 temp_buffers = 8MB
 work_mem = 8MB

...this does not include the plpgsql.so library, which is shared by
all backends (which
use PL/pgSQL).  I know that system will eventually swap out unused parts, but
then again, 40MB * number_of_connections is a bit wasteful.  It seems to me that
both temp_buffers and work_mem don't affect plpgsql.so's allocations.

I wonder if this is something specific for my setup, or if not, can we
reduce memory
used a bit.

   Regards,
       Dawid

PS: I am just starting research now, I thought other people's view is valuable.

---------------------------(end of broadcast)---------------------------
TIP 9: In versions below 8.0, the planner will ignore your desire to
       choose an index scan if your joining column's datatypes do not
       match

[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux