So, I'm compiling with icc. Problem is that with icc, linking is slow when you have IPO enabled since it performs multi-file optimizations. Pike will ALWAYS create a tpike binary even though there is a working Pike installed (so that step is unnecessary). It adds a significant time to the compilation (several minutes I'd guess).
How about, if possible, use the system-installed Pike to run the generation of peep.c etc, skipping the redundant 'tpike' step. I can understand why there's been no optimizations done here since in general it doesn't take a whole lot of time.
Preferably with a configure flag then. The tpike is known to work. The system pike isn't.
/ Peter Bortas
Previous text:
2003-02-17 09:50: Subject: unnecessary tpike
So, I'm compiling with icc. Problem is that with icc, linking is slow when you have IPO enabled since it performs multi-file optimizations. Pike will ALWAYS create a tpike binary even though there is a working Pike installed (so that step is unnecessary). It adds a significant time to the compilation (several minutes I'd guess).
How about, if possible, use the system-installed Pike to run the generation of peep.c etc, skipping the redundant 'tpike' step. I can understand why there's been no optimizations done here since in general it doesn't take a whole lot of time.
/ David Hedbor
Well, as a FYI, when I run make it uses the system pike despite the existance of tpike. Thus it's ENTIRELY redundant since it isn't even used. I would suggest using the system pike, perhaps after verifying that the version is high enough, and iff it fails, fall back to the tpike solution.
/ David Hedbor
Previous text:
2003-02-17 09:54: Subject: unnecessary tpike
Preferably with a configure flag then. The tpike is known to work. The system pike isn't.
/ Peter Bortas
True. Configure test for old pikes now on todo.
/ Peter Bortas
Previous text:
2003-02-17 09:56: Subject: unnecessary tpike
Well, as a FYI, when I run make it uses the system pike despite the existance of tpike. Thus it's ENTIRELY redundant since it isn't even used. I would suggest using the system pike, perhaps after verifying that the version is high enough, and iff it fails, fall back to the tpike solution.
/ David Hedbor
It would make some sense to disable all expensive linktime optimizations when linking tpike.
/ Niels Möller ()
Previous text:
2003-02-17 09:50: Subject: unnecessary tpike
So, I'm compiling with icc. Problem is that with icc, linking is slow when you have IPO enabled since it performs multi-file optimizations. Pike will ALWAYS create a tpike binary even though there is a working Pike installed (so that step is unnecessary). It adds a significant time to the compilation (several minutes I'd guess).
How about, if possible, use the system-installed Pike to run the generation of peep.c etc, skipping the redundant 'tpike' step. I can understand why there's been no optimizations done here since in general it doesn't take a whole lot of time.
/ David Hedbor
That sounds like a very good solution to me. Aren't there already the necessary flags in the Makefile?
/ Mirar
Previous text:
2003-02-17 11:13: Subject: unnecessary tpike
It would make some sense to disable all expensive linktime optimizations when linking tpike.
/ Niels Möller ()
How about removing tpike altogether? Once upon a time it was used as a bootstrap when it was still possible to compile from cvs without a pike. Afaics it serves no real purpose since builtin.cmod came about.
/ Martin Stjernholm, Roxen IS
Previous text:
2003-02-17 09:50: Subject: unnecessary tpike
So, I'm compiling with icc. Problem is that with icc, linking is slow when you have IPO enabled since it performs multi-file optimizations. Pike will ALWAYS create a tpike binary even though there is a working Pike installed (so that step is unnecessary). It adds a significant time to the compilation (several minutes I'd guess).
How about, if possible, use the system-installed Pike to run the generation of peep.c etc, skipping the redundant 'tpike' step. I can understand why there's been no optimizations done here since in general it doesn't take a whole lot of time.
/ David Hedbor
Which parts needs tpike?
Do post_module need it? I believe there is a lot of work that needs to be done by Pike there, especially for GTK. It could probably do the work with the normal pike binary though, if it's built before post_modules.
/ Mirar
Previous text:
2003-02-17 18:05: Subject: unnecessary tpike
How about removing tpike altogether? Once upon a time it was used as a bootstrap when it was still possible to compile from cvs without a pike. Afaics it serves no real purpose since builtin.cmod came about.
/ Martin Stjernholm, Roxen IS
The point with post_modules is to have a freshly built pike to do stuff with, yes. tpike is only used explicitly to build the peephole and tree optimizers and the unicode tables for case conversion.
/ Martin Stjernholm, Roxen IS
Previous text:
2003-02-17 22:40: Subject: unnecessary tpike
Which parts needs tpike?
Do post_module need it? I believe there is a lot of work that needs to be done by Pike there, especially for GTK. It could probably do the work with the normal pike binary though, if it's built before post_modules.
/ Mirar
That sounds indeed like it could be done by the dist process instead, with the previously installed Pike.
/ Mirar
Previous text:
2003-02-17 22:46: Subject: unnecessary tpike
The point with post_modules is to have a freshly built pike to do stuff with, yes. tpike is only used explicitly to build the peephole and tree optimizers and the unicode tables for case conversion.
/ Martin Stjernholm, Roxen IS
Now when you mention it, it really isn't needed anymore, is it?
/ David Hedbor
Previous text:
2003-02-17 18:05: Subject: unnecessary tpike
How about removing tpike altogether? Once upon a time it was used as a bootstrap when it was still possible to compile from cvs without a pike. Afaics it serves no real purpose since builtin.cmod came about.
/ Martin Stjernholm, Roxen IS
pike-devel@lists.lysator.liu.se