Perf::ARM is a Perl extension wrapper for the ARM 2.0 implementation.
SYNOPSIS
use Perf::ARM;
my ($appl_id,$tran_handle, $tran_id, $rc);
($appl_id=Perf::ARM::arm_init( "$0", "*", 0,0,0)) ||
die "arm_init() failed n";
$tran_id=Perf::ARM::arm_getid($appl_id, "simple_tran",
"detail_$$", 0,0,0);
$tran_handle=Perf::ARM::arm_start($tran_id, 0,0,0);
# do the unit of work to be measured
&do_my_work(@my_args)
$rc=Perf::ARM::arm_stop($tran_handle, 0, 0,0,0);
$rc=Perf::ARM::arm_end($appl_id, 0,0,0);
This serves as a simple wrapper around the ARM C routines:
arm_init(char *,char *,long ,char *,long ); [ returns long ]
arm_getid(long ,char *,char *,long ,char *,long ); [ returns long ]
arm_start(long ,long ,char *,long ); [ returns long ]
arm_update(long ,long ,char *,long ); [ returns long ]
arm_stop(long ,long ,long ,char *,long ); [ returns long ]
arm_end(long ,long ,char *,long ); [ returns long ]
Exported functions, with ARM defines
extern arm_int32_t arm_init(
char* appl_name,
char* appl_user_id,
arm_int32_t flags,
char* data,
arm_int32_t data_size);
extern arm_int32_t arm_getid(
arm_int32_t appl_id,
char* tran_name,
char* tran_detail,
arm_int32_t flags,
char* data,
arm_int32_t data_size);
extern arm_int32_t arm_start(
arm_int32_t tran_id,
arm_int32_t flags,
char* data,
arm_int32_t data_size);
extern arm_int32_t arm_update(
arm_int32_t start_handle,
arm_int32_t flags,
char* data,
arm_int32_t data_size);
extern arm_int32_t arm_stop(
arm_int32_t start_handle,
arm_int32_t tran_status,
arm_int32_t flags,
char* data,
arm_int32_t data_size);
extern arm_int32_t arm_end(
arm_int32_t appl_id,
arm_int32_t flags,
char* data,
arm_int32_t data_size);
Product's homepage
Requirements:
· Perl