Dave Mitchell wrote:
make_ext.pl on UNIX is only ever called with a single extension to build
at a time; all the ordering logic is contained in the Makefile.

Perhaps its time to fully integrate the win32/VMS and UNIX halves of
make_ext.pl, which were originally shunted together from separate scripts.
But that might lose the -j parallelism that is provided by make?

The Win32 build doesn't really do parallel module building, all the XS modules are done with 1 make_ext.pl process , all PP in the other make_ext.pl process. If you have 4 or more cores (mktables is the 3rd long running task), they wont really speed up the wall time of the build.

I've thought of make_ext.pl dumping its module list to multiple disk files with each module distributed between the files. Then the makefile schedules each module list when it wants and runs it with make_ext.pl in build mode, not make schedule mode. How many disk files to create can be done by analyzing the -j count from MAKEFLAGS or something or split it evenly into 8 lists of modules if the parallel count is unknown since 8 core is the average medium high end machine today.

Reply via email to