New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[PATCH] factor out an %ENV assignment from make_ext.pl #14430
Comments
From @bulk88Created by @bulk88See attached patch. Half a ms savings is very low, but it was the Perl Info
|
From @bulk880001-factor-out-an-ENV-assignment-from-make_ext.pl.patchFrom be402a4d441c92abe21fc071197eac4b02d4d4a6 Mon Sep 17 00:00:00 2001
From: Daniel Dragan <bulk88@hotmail.com>
Date: Tue, 20 Jan 2015 01:25:26 -0500
Subject: [PATCH] factor out an %ENV assignment from make_ext.pl
nytprof using full (not mini) Win32 perl reported 44 calls on line
"$ENV{PERL_CORE} = 1;" at 623 us spent on line for make_ext.pl --dynamic
Move the env var setting out from build_extension() to before the foreach
loop starts.
---
make_ext.pl | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/make_ext.pl b/make_ext.pl
index ca81c86..2755955 100644
--- a/make_ext.pl
+++ b/make_ext.pl
@@ -220,6 +220,7 @@ if ($Config{osname} eq 'catamount' and @extspec) {
# Snowball's chance of building extensions.
die "This is $Config{osname}, not building $extspec[0], sorry.\n";
}
+$ENV{PERL_CORE} = 1;
foreach my $spec (@extspec) {
my $mname = $spec;
@@ -333,7 +334,6 @@ sub build_extension {
$perl ||= "$up/miniperl";
my $return_dir = $up;
my $lib_dir = "$up/lib";
- $ENV{PERL_CORE} = 1;
my ($makefile, $makefile_no_minus_f);
if (IS_VMS) {
--
1.7.9.msysgit.0
|
From @jkeenanOn Mon Jan 19 23:48:49 2015, bulk88 wrote:
Can you provide the exact perl program you used with Devel::NYTProf? Thank you very much. -- |
The RT System itself - Status changed from 'new' to 'open' |
From @bulk88On Mon Jan 26 19:10:35 2015, jkeenan wrote:
C:\perl521\src\win32>C:\perl521\bin\perl.exe -d:NYTProf -I..\lib ..\make_ext.pl "MAKE=nmake -nologo" --dir=..\cpan --dir=..\dist --dir=..\ext --dynamic I didn't fake the no dynaloader scenario of miniperl, but I wasn't interested in the performance of anything but the file make_ext.pl. EUMM on win32 shells out instead of using XS modules in a couple places with miniperl for example. -- |
From @tonycozOn Mon Jan 19 23:48:49 2015, bulk88 wrote:
Thanks, applied as 3122135. Tony |
@tonycoz - Status changed from 'open' to 'resolved' |
Migrated from rt.perl.org#123633 (status was 'resolved')
Searchable as RT123633$
The text was updated successfully, but these errors were encountered: