* Re: [PATCH 0/3] Enable pointer_query caching throughout.
@ 2022-02-03 22:56 David Edelsohn
2022-02-03 23:09 ` Martin Sebor
0 siblings, 1 reply; 7+ messages in thread
From: David Edelsohn @ 2022-02-03 22:56 UTC (permalink / raw)
To: Martin Sebor; +Cc: GCC Patches, Richard Biener
This series of patches has exploded memory usage and I can no longer
bootstrap GCC on AIX.
As with the Ranger problem exposed by Aldy's patch last September,
something is not freeing memory.
Even on systems where GCC still bootstrap, this excessive memory usage
severely damages GCC compile performance.
Thanks, David
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 0/3] Enable pointer_query caching throughout.
2022-02-03 22:56 [PATCH 0/3] Enable pointer_query caching throughout David Edelsohn
@ 2022-02-03 23:09 ` Martin Sebor
2022-02-04 0:18 ` David Edelsohn
0 siblings, 1 reply; 7+ messages in thread
From: Martin Sebor @ 2022-02-03 23:09 UTC (permalink / raw)
To: David Edelsohn; +Cc: GCC Patches, Richard Biener
On 2/3/22 15:56, David Edelsohn wrote:
> This series of patches has exploded memory usage and I can no longer
> bootstrap GCC on AIX.
>
> As with the Ranger problem exposed by Aldy's patch last September,
> something is not freeing memory.
>
> Even on systems where GCC still bootstrap, this excessive memory usage
> severely damages GCC compile performance.
Does the change below by any chance make a difference? (It's just
a hunch, I haven't tested it beyond quickly building stage 1 and
running a few tests.)
Martin
diff --git a/gcc/pointer-query.h b/gcc/pointer-query.h
index 4c725eeaf34..801a240c38d 100644
--- a/gcc/pointer-query.h
+++ b/gcc/pointer-query.h
@@ -164,9 +164,9 @@ class pointer_query
struct cache_type
{
/* 1-based indices into cache. */
- vec<unsigned> indices;
+ auto_vec<unsigned> indices;
/* The cache itself. */
- vec<access_ref> access_refs;
+ auto_vec<access_ref> access_refs;
};
public:
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 0/3] Enable pointer_query caching throughout.
2022-02-03 23:09 ` Martin Sebor
@ 2022-02-04 0:18 ` David Edelsohn
2022-02-04 0:33 ` Martin Sebor
0 siblings, 1 reply; 7+ messages in thread
From: David Edelsohn @ 2022-02-04 0:18 UTC (permalink / raw)
To: Martin Sebor; +Cc: GCC Patches, Richard Biener
On Thu, Feb 3, 2022 at 6:09 PM Martin Sebor <msebor@gmail.com> wrote:
>
> On 2/3/22 15:56, David Edelsohn wrote:
> > This series of patches has exploded memory usage and I can no longer
> > bootstrap GCC on AIX.
> >
> > As with the Ranger problem exposed by Aldy's patch last September,
> > something is not freeing memory.
> >
> > Even on systems where GCC still bootstrap, this excessive memory usage
> > severely damages GCC compile performance.
>
> Does the change below by any chance make a difference? (It's just
> a hunch, I haven't tested it beyond quickly building stage 1 and
> running a few tests.)
Hi, Martin
Thanks for the quick response. Yes, I am able to restore bootstrap on
AIX (32 bit) with the change.
Thanks, David
>
> Martin
>
>
> diff --git a/gcc/pointer-query.h b/gcc/pointer-query.h
> index 4c725eeaf34..801a240c38d 100644
> --- a/gcc/pointer-query.h
> +++ b/gcc/pointer-query.h
> @@ -164,9 +164,9 @@ class pointer_query
> struct cache_type
> {
> /* 1-based indices into cache. */
> - vec<unsigned> indices;
> + auto_vec<unsigned> indices;
> /* The cache itself. */
> - vec<access_ref> access_refs;
> + auto_vec<access_ref> access_refs;
> };
>
> public:
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 0/3] Enable pointer_query caching throughout.
2022-02-04 0:18 ` David Edelsohn
@ 2022-02-04 0:33 ` Martin Sebor
2022-02-04 2:49 ` Martin Sebor
0 siblings, 1 reply; 7+ messages in thread
From: Martin Sebor @ 2022-02-04 0:33 UTC (permalink / raw)
To: David Edelsohn; +Cc: GCC Patches, Richard Biener
On 2/3/22 17:18, David Edelsohn wrote:
> On Thu, Feb 3, 2022 at 6:09 PM Martin Sebor <msebor@gmail.com> wrote:
>>
>> On 2/3/22 15:56, David Edelsohn wrote:
>>> This series of patches has exploded memory usage and I can no longer
>>> bootstrap GCC on AIX.
>>>
>>> As with the Ranger problem exposed by Aldy's patch last September,
>>> something is not freeing memory.
>>>
>>> Even on systems where GCC still bootstrap, this excessive memory usage
>>> severely damages GCC compile performance.
>>
>> Does the change below by any chance make a difference? (It's just
>> a hunch, I haven't tested it beyond quickly building stage 1 and
>> running a few tests.)
>
> Hi, Martin
>
> Thanks for the quick response. Yes, I am able to restore bootstrap on
> AIX (32 bit) with the change.
Let me finish testing it and if all goes well commit it later tonight.
Thanks for the confirmation!
Martin
>
> Thanks, David
>
>>
>> Martin
>>
>>
>> diff --git a/gcc/pointer-query.h b/gcc/pointer-query.h
>> index 4c725eeaf34..801a240c38d 100644
>> --- a/gcc/pointer-query.h
>> +++ b/gcc/pointer-query.h
>> @@ -164,9 +164,9 @@ class pointer_query
>> struct cache_type
>> {
>> /* 1-based indices into cache. */
>> - vec<unsigned> indices;
>> + auto_vec<unsigned> indices;
>> /* The cache itself. */
>> - vec<access_ref> access_refs;
>> + auto_vec<access_ref> access_refs;
>> };
>>
>> public:
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 0/3] Enable pointer_query caching throughout.
2022-02-04 0:33 ` Martin Sebor
@ 2022-02-04 2:49 ` Martin Sebor
0 siblings, 0 replies; 7+ messages in thread
From: Martin Sebor @ 2022-02-04 2:49 UTC (permalink / raw)
To: David Edelsohn; +Cc: GCC Patches, Richard Biener
On 2/3/22 17:33, Martin Sebor wrote:
> On 2/3/22 17:18, David Edelsohn wrote:
>> On Thu, Feb 3, 2022 at 6:09 PM Martin Sebor <msebor@gmail.com> wrote:
>>>
>>> On 2/3/22 15:56, David Edelsohn wrote:
>>>> This series of patches has exploded memory usage and I can no longer
>>>> bootstrap GCC on AIX.
>>>>
>>>> As with the Ranger problem exposed by Aldy's patch last September,
>>>> something is not freeing memory.
>>>>
>>>> Even on systems where GCC still bootstrap, this excessive memory usage
>>>> severely damages GCC compile performance.
>>>
>>> Does the change below by any chance make a difference? (It's just
>>> a hunch, I haven't tested it beyond quickly building stage 1 and
>>> running a few tests.)
>>
>> Hi, Martin
>>
>> Thanks for the quick response. Yes, I am able to restore bootstrap on
>> AIX (32 bit) with the change.
>
> Let me finish testing it and if all goes well commit it later tonight.
Now pushed as r12-7043.
Martin
>
> Thanks for the confirmation!
>
> Martin
>
>>
>> Thanks, David
>>
>>>
>>> Martin
>>>
>>>
>>> diff --git a/gcc/pointer-query.h b/gcc/pointer-query.h
>>> index 4c725eeaf34..801a240c38d 100644
>>> --- a/gcc/pointer-query.h
>>> +++ b/gcc/pointer-query.h
>>> @@ -164,9 +164,9 @@ class pointer_query
>>> struct cache_type
>>> {
>>> /* 1-based indices into cache. */
>>> - vec<unsigned> indices;
>>> + auto_vec<unsigned> indices;
>>> /* The cache itself. */
>>> - vec<access_ref> access_refs;
>>> + auto_vec<access_ref> access_refs;
>>> };
>>>
>>> public:
>
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH 0/3] Enable pointer_query caching throughout.
@ 2022-02-02 23:35 Martin Sebor
2022-02-03 9:07 ` Richard Biener
0 siblings, 1 reply; 7+ messages in thread
From: Martin Sebor @ 2022-02-02 23:35 UTC (permalink / raw)
To: gcc-patches
Richard, as we discussed(*), this patch series enables the pointer_query
cache in the remaining two passes where it's currently disabled. Since
not using the cache is not an option anymore, the first patch in
the series makes it a private member of the pointer_query class and its
use unconditional. It also simplifies the two passes that use it to
avoid having to install it.
Tested on x86_64-linux.
Martin
[*] For reference:
https://gcc.gnu.org/pipermail/gcc-patches/2022-January/589243.html
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 0/3] Enable pointer_query caching throughout.
2022-02-02 23:35 Martin Sebor
@ 2022-02-03 9:07 ` Richard Biener
0 siblings, 0 replies; 7+ messages in thread
From: Richard Biener @ 2022-02-03 9:07 UTC (permalink / raw)
To: Martin Sebor; +Cc: GCC Patches
On Thu, Feb 3, 2022 at 12:35 AM Martin Sebor <msebor@gmail.com> wrote:
>
> Richard, as we discussed(*), this patch series enables the pointer_query
> cache in the remaining two passes where it's currently disabled. Since
> not using the cache is not an option anymore, the first patch in
> the series makes it a private member of the pointer_query class and its
> use unconditional. It also simplifies the two passes that use it to
> avoid having to install it.
>
> Tested on x86_64-linux.
OK for the whole series.
Thanks for fixing this issue!
Richard.
> Martin
>
> [*] For reference:
> https://gcc.gnu.org/pipermail/gcc-patches/2022-January/589243.html
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2022-02-04 2:49 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-02-03 22:56 [PATCH 0/3] Enable pointer_query caching throughout David Edelsohn
2022-02-03 23:09 ` Martin Sebor
2022-02-04 0:18 ` David Edelsohn
2022-02-04 0:33 ` Martin Sebor
2022-02-04 2:49 ` Martin Sebor
-- strict thread matches above, loose matches on Subject: below --
2022-02-02 23:35 Martin Sebor
2022-02-03 9:07 ` Richard Biener
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).