view TOOLS/perlbench.pl @ 17616:92431bc3d014

This patch removes mmap support because it doesn't have any benefit. Directly accessing the sample buffer makes sense only when the samples can be constructed in-place. When the samples are just copied from another buffer (as is the case with libao2 drivers), the code to copy those samples is just a reimplementation of snd_pcm_writei(), so we could as well use that function. Besides, the current mmap code does not work except in the most simple cases: it claims to support non-interleaved and complex sample formats, but treats them the same as interleaved formats and writes to the wrong memory location.
author cladisch
date Mon, 13 Feb 2006 11:15:25 +0000
parents 5cbbf47cae1e
children
line wrap: on
line source

#!/usr/bin/perl -w
use strict;
use constant CMD => "./fastmem2-k7";

sub dobench {
	my $i;
	my ($runs, $sleep, $command) = @_;
	for($i = 0; $i < $runs; $i++) {
		sleep $sleep;
		system $command;
	}
}

print "Single run of sse bench with 1sec sleep:\n";
&dobench(1,1,CMD);
print "Sleeping 10seconds before starting next bench!\n";
sleep 10;		
print "10 runs of sse bench with 0sec sleep:\n";
&dobench(10,0,CMD);
print "Sleeping 10seconds before starting next bench!\n";
sleep 10;		
print "10 runs of sse bench with 1sec sleep:\n";
&dobench(10,1,CMD);
print "Sleeping 10seconds before starting next bench!\n";
sleep 10;		
print "10 runs of sse bench with 2sec sleep:\n";
&dobench(10,2,CMD);
print "Sleeping 10seconds before starting next bench!\n";
sleep 10;		
print "10 runs of sse bench with 3sec sleep:\n";
&dobench(10,3,CMD);
print "Bench finished!\n";