develooper Front page | perl.perl5.porters | Postings from January 2018

TONYC TPF Grant 10 report 5

From:
Tony Cook
Date:
January 16, 2018 08:20
Subject:
TONYC TPF Grant 10 report 5
Message ID:
20180116082004.7ejlmwufrciiyxu7@mars.tony.develop-help.com
[Hours]         [Activity]
2018/01/02      Tuesday
 0.33           list catch up
 0.88           #127743 try to work up makefile rules for new stack limit
                handling
 0.93           #127743 more makefile rules, work on fetching config from
                var instead of a constant
=====
 2.14

2018/01/03      Wednesday
 2.32           #127743 more stack size calculation re-work
 2.08           #127743 more makefile rules, experiment with stack size
                probing
=====
 4.40

2018/01/04      Thursday
 1.82           #127743 testing, debugging, more stack size probing,
                documentation
 1.92           #127743 debugging, non-core testing
=====
 3.74

Which I calculate is 10.28 hours.

I continued my work on Storable this week.

This week I worked on re-working the recursion limit handling added to
Storable in cperl.

This had a few problems:

1) the limit was hard-coded into the Storable binary, so if the stack
size changed for whatever reason[1] the user couldn't adjust the limit

2) the Makefile rules were incorrect - the rule didn't depend on the
Storable binary, so whether the stacksize tool could do it's job was
fairly random with parallel builds.

3) there's no separate Storable binary for static or static Storable
builds, so it completely failed for those cases.

4) The gmake makefile for Win32 hadn't been updated.

I re-worked the generation code to create a new Storable/Limit.pm file
which is optionally[2] loaded by Storable.

This simply sets defaults for the recursion limits that the user can
override at runtime.

Tony

[1] ulimit, or for systems where child thread stack sizes are different
    from the parent, or if the user specifies a different child thread
    stack size.

[2] it's always present once the perl build is done, and when Storable
has been successfully installed from CPAN, so it's not another load
from default . in @INC vector.



nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About