Perl

Perl is a high-level, general-purpose, interpreted, dynamic programming language. Perl was originally developed by Larry Wall in 1987 as a general-purpose Unix scripting language to make report processing easier. Since then, it has undergone many changes and revisions and become widely popular amongst programmers.

Inputs and trace's reports

We collect 2 traces of perl's allocation when running these scripts:
  1. Sort a file with the primary key being the last item on the line => report input 1
  2. Script that translates a “/etc/hosts” file from the unixops format to the CS one => report input 2
You can find all MallocLab's traces for Perl here.

Allocator's configurations

  1. BSA => Original BSA with page allocation and alternate split side (AS)
  2. TLSF => Two Level Segregate allocator
  3. BSA-- => BSA with no split or coalesce and no AS
  4. BSA++ 10 => BSA++ with no AS, popularity index threshold 10
  5. BSA++ (npa) 10 => BSA++ with no AS, no page allocatione (npa), popularity index threshold 10
  6. BSA++ AS 30 => BSA++ with AS, popularity index threshold 30
  7. BSA++ AVG 10 => BSA++ with no AS, average popularity threshold 10
  8. BSA++ AVG (npa) 10 => BSA++ with no AS, npa, average popularity threshold 10
  9. BSA++ AS AVG 30 => BSA++ with AS, npa, average popularity threshold 30
  10. BSA++ VAR 345 => BSA++ with no AS, popularity index threshold >= 15, variance popularity threshold 345
  11. BSA++ VAR (npa) 345 => BSA++ with no AS, npa, popularity index threshold >= 15, variance popularity threshold 345
  12. BSA++ VAR AS 345 => BSA++ with AS, popularity index threshold >= 15, variance popularity threshold 345
Some of these allocators have been tested with different threshold: In this page we show only the winner for each type of allocator's configuration. Read BSA or BSA++ description in order to understand all features listed above.

Time

Space

Return to the main page