43 lines · c
1// SPDX-License-Identifier: GPL-2.02/*3 * Artificial memory access program for testing DAMON.4 *5 * Receives number of regions and size of each region from user. Allocate the6 * regions and repeatedly access even numbered (starting from zero) regions.7 */8 9#include <stdio.h>10#include <stdlib.h>11#include <string.h>12#include <time.h>13 14int main(int argc, char *argv[])15{16 char **regions;17 clock_t start_clock;18 int nr_regions;19 int sz_region;20 int access_time_ms;21 int i;22 23 if (argc != 3) {24 printf("Usage: %s <number> <size (bytes)>\n", argv[0]);25 return -1;26 }27 28 nr_regions = atoi(argv[1]);29 sz_region = atoi(argv[2]);30 31 regions = malloc(sizeof(*regions) * nr_regions);32 for (i = 0; i < nr_regions; i++)33 regions[i] = malloc(sz_region);34 35 while (1) {36 for (i = 0; i < nr_regions; i++) {37 if (i % 2 == 0)38 memset(regions[i], i, sz_region);39 }40 }41 return 0;42}43