memory - strange slowing down of C++ allocs -
could please tell me why following things happen:
i have 2 computers:
- my working comp
- server
i maintain c++ program (msvc 2005 c++ compiled) works slow on server, not on comp.
i conducted measurements (getthreadtimes , on) , narrow place - memory allocation (new/malloc). , happens on server!
i claim happens due memory fragmentation because of 1st time server instance of program works fine, start loosing time on allocs after data reload again memory (1-1.5 million allocs/frees).
i wouldnt surprised if see same behaviour due memory fragmentation on both computers (my comp , server) see is: 1). on comp allocations take ~5% of time (not exact someting that) 2). on server these allocs takes ~75% of time
how happen? slow down c++ allocations on server computer, meanwhile ok workstation. difference? connected os-level memory management functions? because c++ level manager same in both cases.
here both configurations:
1). computer (where allocs take ~5%):
os name: microsoft windows 7 enterprise os version: 6.1.7600 n/a build 7600 os manufacturer: microsoft corporation os configuration: member workstation os build type: multiprocessor free registered owner: windows user original install date: 16/09/2011, 19:37:43 system boot time: 05/04/2013, 11:58:11 system model: 7304a58 system type: x64-based pc processor(s): 1 processor(s) installed. [01]: intel64 family 6 model 23 stepping 10 genuineintel ~2642 mhz windows directory: c:\windows system directory: c:\windows\system32 boot device: \device\harddiskvolume2 system locale: ru;russian input locale: en-us;english (united states) total physical memory: 4,061 mb available physical memory: 872 mb virtual memory: max size: 8,121 mb virtual memory: available: 4,579 mb virtual memory: in use: 3,542 mb page file location(s): c:\pagefile.sys
2). server (where allocs take ~75%):
os name: microsoft(r) windows(r) server 2003, enterprise edition os version: 5.2.3790 service pack 2 build 3790 os manufacturer: microsoft corporation os configuration: member server os build type: multiprocessor free original install date: 11/12/2008, 01:22:57 system time: 1 days, 8 hours, 35 minutes, 52 seconds system manufacturer: hp system model: proliant bl685c g5 system type: x86-based pc processor(s): 4 processor(s) installed. [01]: x86 family 16 model 2 stepping 3 authenticamd ~2210 mhz [02]: x86 family 16 model 2 stepping 3 authenticamd ~2210 mhz [03]: x86 family 16 model 2 stepping 3 authenticamd ~2210 mhz [04]: x86 family 16 model 2 stepping 3 authenticamd ~2210 mhz windows directory: c:\winnt system directory: c:\winnt\system32 boot device: \device\harddiskvolume1 total physical memory: 65,534 mb available physical memory: 61,284 mb page file: max size: 97,696 mb page file: available: 93,445 mb page file: in use: 4,251 mb page file location(s): c:\pagefile.sys d:\pagefile1\pagefile.sys d:\pagefile2\pagefile.sys d:\pagefile3\pagefile.sys d:\pagefile4\pagefile.sys d:\pagefile5\pagefile.sys d:\pagefile6\pagefile.sys d:\pagefile7\pagefile.sys
will grateful clarifying issue.
the problem memory functions use 1 mutex lock memory allocation , freeing.
Comments
Post a Comment