Proposed location for variable sizes etc in ARRAY_REF and COMPONENT_REF
Geert Bosch
bosch@gnat.com
Wed Jun 23 23:56:00 GMT 2004
On Jun 23, 2004, at 16:14, Gerald Pfeifer wrote:
> On Tue, 22 Jun 2004, Andrew Pinski wrote:
>>> I plan to do tests with C and C++ by changing the accessor functions
>>> to
>>> assume the extra fields are unset and of course removing those
>>> fields.
>> Yes PR8361 but it is broken now by the patch anyways :(.
>
> I also was going to suggest PR8361. ;-) Is anybody working on fixing
> this?
I just finished testing with this test case, and the differences in
memory
usage are minimal. In fact, I have a hard time getting conclusive data
with -fmem-report. There seems 4k less allocated for size 16 and 16k
more
for size 32. Final report give 122M versus 121M, but I can't tell the
exact difference due to the rounding, as even a few k could tip it from
121
to 122. Strangely enough, the amount of memory still allocated at the
end of the compilation process is 160k *less*.
Anyway, with this test case there is not enough difference in memory
usage
to make a difference. Any other test cases I should look at?
-Geert
With extra fields for ARRAY_REF and COMPONENT_REF:
{GC 105853k -> 105821k}Memory still allocated at the end of the
compilation process
Size Allocated Used Overhead
8 4096 32 120
16 908k 852k 19k
64 12M 8221k 203k
128 12M 11M 172k
256 32k 30k 448
512 4956k 4954k 67k
1024 192k 192k 2688
2048 124k 120k 1736
4096 112k 112k 1568
8192 128k 128k 896
16384 192k 192k 672
32768 64k 64k 112
65536 576k 576k 504
131072 384k 384k 168
262144 256k 256k 56
224 51M 46M 720k
48 19M 11M 315k
32 4424k 4143k 77k
80 14M 14M 202k
Total 122M 103M 1788k
Without extra fields:
{GC 123795k -> 105981k}Memory still allocated at the end of the
compilation process
Size Allocated Used Overhead
8 4096 32 120
16 904k 852k 19k
64 12M 8221k 198k
128 12M 11M 172k
256 32k 30k 448
512 4960k 4954k 67k
1024 192k 192k 2688
2048 128k 120k 1792
4096 112k 112k 1568
8192 128k 128k 896
16384 192k 192k 672
32768 64k 64k 112
65536 576k 576k 504
131072 384k 384k 168
262144 256k 256k 56
224 51M 46M 717k
48 19M 11M 310k
32 4408k 4143k 77k
80 14M 13M 201k
Total 121M 103M 1774k
More information about the Gcc
mailing list