Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
better integration of this test in our framework (like, use XBT for the logs and...
authorMartin Quinson <martin.quinson@loria.fr>
Mon, 8 Oct 2012 22:37:46 +0000 (00:37 +0200)
committerMartin Quinson <martin.quinson@loria.fr>
Mon, 8 Oct 2012 22:37:46 +0000 (00:37 +0200)
teshsuite/xbt/mmalloc.tesh
teshsuite/xbt/mmalloc_test.c

index d45a542..7d68531 100644 (file)
@@ -1 +1,105 @@
-$ ./mmalloc_test 
+$ ./mmalloc_test --log=root.fmt:%m%n
+> Allocating a new heap
+> HeapA allocated
+> 100 bytes allocated with offset 1503232
+> 200 bytes allocated with offset 1507072
+> 300 bytes allocated with offset 1507328
+> 400 bytes allocated with offset 1510912
+> 500 bytes allocated with offset 1510400
+> 600 bytes allocated with offset 1511424
+> 700 bytes allocated with offset 1514496
+> 800 bytes allocated with offset 1513472
+> 900 bytes allocated with offset 1512448
+> 1000 bytes allocated with offset 1515520
+> 100 bytes allocated with offset 1506816
+> 200 bytes allocated with offset 1506560
+> 300 bytes allocated with offset 1509888
+> 400 bytes allocated with offset 1509376
+> 500 bytes allocated with offset 1508864
+> 600 bytes allocated with offset 1518592
+> 700 bytes allocated with offset 1517568
+> 800 bytes allocated with offset 1516544
+> 900 bytes allocated with offset 1519616
+> 1000 bytes allocated with offset 1522688
+> 100 bytes allocated with offset 1506304
+> 200 bytes allocated with offset 1506048
+> 300 bytes allocated with offset 1508352
+> 400 bytes allocated with offset 1507840
+> 500 bytes allocated with offset 1523712
+> 600 bytes allocated with offset 1521664
+> 700 bytes allocated with offset 1520640
+> 800 bytes allocated with offset 1527808
+> 900 bytes allocated with offset 1530880
+> 1000 bytes allocated with offset 1529856
+> 100 bytes allocated with offset 1505792
+> 200 bytes allocated with offset 1505536
+> 300 bytes allocated with offset 1527296
+> 400 bytes allocated with offset 1526784
+> 500 bytes allocated with offset 1526272
+> 600 bytes allocated with offset 1528832
+> 700 bytes allocated with offset 1531904
+> 800 bytes allocated with offset 1534976
+> 900 bytes allocated with offset 1533952
+> 1000 bytes allocated with offset 1532928
+> 100 bytes allocated with offset 1505280
+> 200 bytes allocated with offset 1505024
+> 300 bytes allocated with offset 1525760
+> 400 bytes allocated with offset 1525248
+> 500 bytes allocated with offset 1524736
+> 600 bytes allocated with offset 1536000
+> 700 bytes allocated with offset 1539072
+> 800 bytes allocated with offset 1538048
+> 900 bytes allocated with offset 1537024
+> 1000 bytes allocated with offset 1540096
+> 100 bytes allocated with offset 1504768
+> 200 bytes allocated with offset 1504512
+> 300 bytes allocated with offset 1524224
+> 400 bytes allocated with offset 1544192
+> 500 bytes allocated with offset 1547776
+> 600 bytes allocated with offset 1543168
+> 700 bytes allocated with offset 1542144
+> 800 bytes allocated with offset 1541120
+> 900 bytes allocated with offset 1548288
+> 1000 bytes allocated with offset 1551360
+> 100 bytes allocated with offset 1504256
+> 200 bytes allocated with offset 1504000
+> 300 bytes allocated with offset 1547264
+> 400 bytes allocated with offset 1546752
+> 500 bytes allocated with offset 1546240
+> 600 bytes allocated with offset 1550336
+> 700 bytes allocated with offset 1549312
+> 800 bytes allocated with offset 1552384
+> 900 bytes allocated with offset 1555456
+> 1000 bytes allocated with offset 1554432
+> 100 bytes allocated with offset 1503744
+> 200 bytes allocated with offset 1503488
+> 300 bytes allocated with offset 1545728
+> 400 bytes allocated with offset 1545216
+> 500 bytes allocated with offset 1544704
+> 600 bytes allocated with offset 1553408
+> 700 bytes allocated with offset 1556480
+> 800 bytes allocated with offset 1559552
+> 900 bytes allocated with offset 1558528
+> 1000 bytes allocated with offset 1557504
+> 100 bytes allocated with offset 1560576
+> 200 bytes allocated with offset 1564416
+> 300 bytes allocated with offset 1564672
+> 400 bytes allocated with offset 1568256
+> 500 bytes allocated with offset 1567744
+> 600 bytes allocated with offset 1568768
+> 700 bytes allocated with offset 1571840
+> 800 bytes allocated with offset 1570816
+> 900 bytes allocated with offset 1569792
+> 1000 bytes allocated with offset 1572864
+> 100 bytes allocated with offset 1564160
+> 200 bytes allocated with offset 1563904
+> 300 bytes allocated with offset 1567232
+> 400 bytes allocated with offset 1566720
+> 500 bytes allocated with offset 1566208
+> 600 bytes allocated with offset 1575936
+> 700 bytes allocated with offset 1574912
+> 800 bytes allocated with offset 1573888
+> 900 bytes allocated with offset 1576960
+> 1000 bytes allocated with offset 1580032
+> Done; bye bye
+
index 8606e3a..30e0994 100644 (file)
@@ -1,4 +1,5 @@
 #include "xbt/mmalloc.h"
+#include "xbt.h"
 #include <stdio.h>
 #include <assert.h>
 #include <fcntl.h>
@@ -7,16 +8,18 @@
 #include <string.h>
 #include <unistd.h>
 
+XBT_LOG_NEW_DEFAULT_CATEGORY(test,"this test");
 
 #define BUFFSIZE 204800
 #define TESTSIZE 100
 
-int main()
+int main(int argc, char**argv)
 {
   void *heapA;
   void *pointers[TESTSIZE];
-  srand(0); // we need the test to be reproducible
+  xbt_init(&argc,argv);
 
+  XBT_INFO("Allocating a new heap");
   heapA = xbt_mheap_new(-1, ((char*)sbrk(0)) + BUFFSIZE);
   if (heapA == NULL) {
     perror("attach 1 failed");
@@ -24,19 +27,19 @@ int main()
     exit(1);
   }
 
-  fprintf(stderr, "HeapA=%p\n", heapA);
-   fflush(stderr);
+  XBT_INFO("HeapA allocated");
+
   int i, size;
   for (i = 0; i < TESTSIZE; i++) {
-    size = rand() % 1000;
+    size = ((i % 10)+1)* 100;
     pointers[i] = mmalloc(heapA, size);
-    fprintf(stderr, "%d bytes allocated with offset %li\n", size, ((char*)pointers[i])-((char*)heapA));
+    XBT_INFO("%d bytes allocated with offset %lu", size, ((char*)pointers[i])-((char*)heapA));
   }
 
   for (i = 0; i < TESTSIZE; i++) {
     mfree(heapA, pointers[i]);
   }
 
-  fprintf(stderr, "Ok bye bye\n");
+  XBT_INFO("Done; bye bye");
   return 0;
 }