|
From: <sv...@va...> - 2005-09-28 11:50:26
|
Author: sewardj
Date: 2005-09-28 12:50:20 +0100 (Wed, 28 Sep 2005)
New Revision: 4808
Log:
Increase some sizes to deal better with the new multigigabyte world:
- on 64-bit platforms, double the size of the supported address
space to 32G.
- Increase the size of the ExeContext table 6 times. Some very
large apps have been observed to have been doing a lot of=20
searching in the old 4999 entry table. This table may be
OSetified in the fullness of time.
Modified:
trunk/coregrind/m_aspacemgr/aspacemgr.c
trunk/coregrind/m_execontext.c
trunk/coregrind/m_transtab.c
trunk/memcheck/mc_main.c
Modified: trunk/coregrind/m_aspacemgr/aspacemgr.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/coregrind/m_aspacemgr/aspacemgr.c 2005-09-28 11:25:10 UTC (rev =
4807)
+++ trunk/coregrind/m_aspacemgr/aspacemgr.c 2005-09-28 11:50:20 UTC (rev =
4808)
@@ -1465,13 +1465,13 @@
accordingly. */
=20
VG_(debugLog)(2, "aspacem",=20
- " sp_at_startup =3D 0x%llx (supplied)\n",=20
+ " sp_at_startup =3D 0x%010llx (supplied)\n",=20
(ULong)sp_at_startup );
=20
aspacem_minAddr =3D (Addr) 0x04000000; // 64M
=20
# if VG_WORDSIZE =3D=3D 8
- aspacem_maxAddr =3D (Addr)0x400000000 - 1; // 16G
+ aspacem_maxAddr =3D (Addr)0x800000000 - 1; // 32G
# else
aspacem_maxAddr =3D VG_PGROUNDDN( sp_at_startup ) - 1;
# endif
Modified: trunk/coregrind/m_execontext.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/coregrind/m_execontext.c 2005-09-28 11:25:10 UTC (rev 4807)
+++ trunk/coregrind/m_execontext.c 2005-09-28 11:50:20 UTC (rev 4808)
@@ -55,7 +55,7 @@
=20
/* Number of lists in which we keep track of ExeContexts. Should be
prime. */
-#define N_EC_LISTS 4999 /* a prime number */
+#define N_EC_LISTS 30011 /*4999*/ /* a prime number */
=20
/* The idea is only to ever store any one context once, so as to save
space and make exact comparisons faster. */
Modified: trunk/coregrind/m_transtab.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/coregrind/m_transtab.c 2005-09-28 11:25:10 UTC (rev 4807)
+++ trunk/coregrind/m_transtab.c 2005-09-28 11:50:20 UTC (rev 4808)
@@ -57,12 +57,12 @@
/* Number of TC entries in each sector. This needs to be a prime
number to work properly, and it is strongly recommended not to
change this. */
-#define N_TTES_PER_SECTOR /*30011*/ 40009
+#define N_TTES_PER_SECTOR /*30011*/ /*40009*/ 80021
=20
/* Because each sector contains a hash table of TTEntries, we need to
specify the maximum allowable loading, after which the sector is
deemed full. */
-#define SECTOR_TT_LIMIT_PERCENT 60
+#define SECTOR_TT_LIMIT_PERCENT 66
=20
/* The sector is deemed full when this many entries are in it. */
#define N_TTES_PER_SECTOR_USABLE \
Modified: trunk/memcheck/mc_main.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/memcheck/mc_main.c 2005-09-28 11:25:10 UTC (rev 4807)
+++ trunk/memcheck/mc_main.c 2005-09-28 11:50:20 UTC (rev 4808)
@@ -134,9 +134,9 @@
=20
#else
=20
-/* Just handle the first 16G fast and the rest via auxiliary
+/* Just handle the first 32G fast and the rest via auxiliary
primaries. */
-# define N_PRIMARY_BITS 18
+# define N_PRIMARY_BITS 19
=20
#endif
=20
|