diff --git a/totalview-module/demos/demo02/demo02.c b/totalview-module/demos/demo02/demo02.c index c59edf8c1a1eff0618432e307016926fb483c3fd..68a4d14138a39dbc502b8bb49f1a3611770191bb 100644 --- a/totalview-module/demos/demo02/demo02.c +++ b/totalview-module/demos/demo02/demo02.c @@ -1,64 +1,59 @@ -// SPDX-FileCopyrightText: 2021 Competence Center for High Performance Computing -// in Hessen (HKHLR) SPDX-License-Identifier: MIT +// SPDX-FileCopyrightText: 2021 Competence Center for High Performance Computing in Hessen (HKHLR) +// SPDX-License-Identifier: MIT -#include <memory.h> #include <stdio.h> +#include <memory.h> #include <stdlib.h> #define NUMBER_OF_ITEMS 12 -struct Item { - float value; - char data[512]; - struct Item *next, *previous; - int id; -}; -void addItemData(struct Item *list) { - int i; - struct Item *aux = NULL; - for (i = 0; i <= NUMBER_OF_ITEMS; i++) { - list[i].next = list + i + 1; - list[i].previous = list + i - 1; - list[i].id = i + 1; - list[i].value = 1.f * (i + 1) * 500.50; - memset(list[i].data, 0, 511); - } -} +#define DATA_SIZE (4*1024-4-4-8-8) -void printItemData(struct Item *list) { -#ifndef USE_WHILE_LOOP - int i; - for (i = 0; i <= NUMBER_OF_ITEMS; i++) { - printf("=========Item %d=========\n", list[i].id); - printf("Value: %.2f \n", list[i].value); - printf("Previous Item %d\n", list[i].previous->id); - printf(" Next Item %d\n", list[i].next->id); - } -#else - struct Item *current_item = &list[0]; // 1st item - while (current_item != NULL) { - printf("=========Item %d=========\n", current_item->id); - printf("Value: %.2f \n", current_item->value); - printf("Previous Item %d\n", current_item->previous->id); - printf(" Next Item %d\n", current_item->next->id); +struct Item +{ + float value; + int id; + char data[512]; + struct Item *next,* previous; +}; - current_item = current_item->next; - } -#endif +void addItemData(struct Item *list) +{ + int i; + struct Item *aux = NULL; + for (i = 0; i <= NUMBER_OF_ITEMS; i++) + { + list[i].next = list + i + 1; + list[i].previous = list + i -1; + list[i].id = i + 1; + list[i].value = 1.f * (i+1) * 500.50; + memset(list[i].data,0,512); + } } -int main() { - printf("Debugging demo code #2!\n"); - - struct Item *list; - list = malloc(sizeof(struct Item) * NUMBER_OF_ITEMS); +void printItemData(struct Item *list) +{ + int i; + for (i = 0; i <= NUMBER_OF_ITEMS; i++) + { + printf("=========Item %d=========\n", list[i].id); + printf("Value: %.2f \n", list[i].value); + printf("Previous Item %d\n", list[i].previous->id); + printf(" Next Item %d\n", list[i].next->id); + } +} - if (list = NULL) - exit(-1); +int main() +{ - addItemData(list); + struct Item * list; + list = malloc ( sizeof (struct Item) * NUMBER_OF_ITEMS); + + if (list = NULL) exit(-1); + + addItemData(list); - printItemData(list); + printItemData(list); - return 0; + return 0; } diff --git a/totalview-module/demos/demo02/demo02B.c b/totalview-module/demos/demo02/demo02B.c index 49bf220483b2af565664e7ee23c9415ee4eb49b2..88c4593cc823aa3225a28811c070ccfb3f9a072a 100644 --- a/totalview-module/demos/demo02/demo02B.c +++ b/totalview-module/demos/demo02/demo02B.c @@ -6,19 +6,22 @@ #include <stdlib.h> #define NUMBER_OF_ITEMS 12 + +#define DATA_SIZE (4*1024-4-4-8-8) + struct Item { float value; - char data[512]; - struct Item *next,* previous; int id; + char data[4096]; + struct Item *next,* previous; }; void addItemData(struct Item *list) { int i; struct Item *aux = NULL; - for (i = 0; i <= NUMBER_OF_ITEMS; i++) + for (i = 0; i < NUMBER_OF_ITEMS; i++) { list[i].next = list + i + 1; list[i].previous = list + i -1; @@ -31,7 +34,7 @@ void addItemData(struct Item *list) void printItemData(struct Item *list) { int i; - for (i = 0; i <= NUMBER_OF_ITEMS; i++) + for (i = 0; i < NUMBER_OF_ITEMS; i++) { printf("=========Item %d=========\n", list[i].id); printf("Value: %.2f \n", list[i].value); @@ -42,11 +45,9 @@ void printItemData(struct Item *list) int main() { - printf("Debugging demo code #2!\n"); - + printf("Demo2\n"); struct Item * list; list = malloc ( sizeof (struct Item) * NUMBER_OF_ITEMS); - if (list == NULL) exit(-1); addItemData(list); diff --git a/totalview-module/demos/demo02/demo02C.c b/totalview-module/demos/demo02/demo02C.c index a1201c5c04db3b8b9463bc717cf7f9826b2dd3d6..269ebe04610a7366d1be4c071de550dc3d5f561e 100644 --- a/totalview-module/demos/demo02/demo02C.c +++ b/totalview-module/demos/demo02/demo02C.c @@ -6,19 +6,22 @@ #include <stdlib.h> #define NUMBER_OF_ITEMS 12 + +#define DATA_SIZE (4*1024-4-4-8-8) + struct Item { float value; - char data[512]; - struct Item *next,* previous; int id; + char data[4096]; + struct Item *next,* previous; }; void addItemData(struct Item *list) { int i; struct Item *aux = NULL; - for (i = 0; i <= NUMBER_OF_ITEMS; i++) + for (i = 0; i < NUMBER_OF_ITEMS; i++) { list[i].next = list + i + 1; if ( i >0 ) @@ -34,7 +37,7 @@ void addItemData(struct Item *list) void printItemData(struct Item *list) { int i; - for (i = 0; i <= NUMBER_OF_ITEMS; i++) + for (i = 0; i < NUMBER_OF_ITEMS; i++) { printf("=========Item %d=========\n", list[i].id); printf("Value: %.2f \n", list[i].value); @@ -46,8 +49,6 @@ void printItemData(struct Item *list) int main() { - printf("Debugging demo code #2!\n"); - struct Item * list; list = malloc ( sizeof (struct Item) * NUMBER_OF_ITEMS); diff --git a/totalview-module/demos/demo02/demo02D.c b/totalview-module/demos/demo02/demo02D.c index 3f108a783047eb5884fa620aabf92a3d5fccc3bc..4cf98524647cd47ea3e35a0253b1e8f89ad1476b 100644 --- a/totalview-module/demos/demo02/demo02D.c +++ b/totalview-module/demos/demo02/demo02D.c @@ -6,7 +6,8 @@ #include <stdlib.h> #define NUMBER_OF_ITEMS 12 -#define DATA_SIZE (4*1024-4-4-8-8) + +#define DATA_SIZE (32*1024-4-4-8-8) struct Item { @@ -20,7 +21,7 @@ void addItemData(struct Item *list) { int i; struct Item *aux = NULL; - for (i = 0; i <= NUMBER_OF_ITEMS; i++) + for (i = 0; i < NUMBER_OF_ITEMS; i++) { list[i].next = list + i + 1; if ( i >0 ) @@ -36,7 +37,7 @@ void addItemData(struct Item *list) void printItemData(struct Item *list) { int i; - for (i = 0; i <= NUMBER_OF_ITEMS; i++) + for (i = 0; i < NUMBER_OF_ITEMS; i++) { printf("=========Item %d=========\n", list[i].id); printf("Value: %.2f \n", list[i].value); @@ -48,8 +49,6 @@ void printItemData(struct Item *list) int main() { - printf("Debugging demo code #2!\n"); - struct Item * list; list = malloc ( sizeof (struct Item) * NUMBER_OF_ITEMS); diff --git a/totalview-module/demos/demo02/demo02E.c b/totalview-module/demos/demo02/demo02E.c new file mode 100644 index 0000000000000000000000000000000000000000..a27e6201d65d34c477249ad804c6fc1443b75e30 --- /dev/null +++ b/totalview-module/demos/demo02/demo02E.c @@ -0,0 +1,64 @@ +// SPDX-FileCopyrightText: 2021 Competence Center for High Performance Computing in Hessen (HKHLR) +// SPDX-License-Identifier: MIT + +#include <stdio.h> +#include <memory.h> +#include <stdlib.h> +#define NUMBER_OF_ITEMS 12 + + +#define DATA_SIZE (32*1024-4-4-8-8) + +struct Item +{ + float value; + char data[DATA_SIZE]; + struct Item *next,* previous; + int id; +}; + +void addItemData(struct Item *list) +{ + int i; + struct Item *aux = NULL; + for (i = 0; i < NUMBER_OF_ITEMS; i++) + { + list[i].next = list + i + 1; + if ( i >0 ) + list[i].previous = list + i -1; + else + list[i].previous = NULL; + list[i].id = i + 1; + list[i].value = 1.f * (i+1) * 500.50; + memset(list[i].data,0,DATA_SIZE); + } +} + +void printItemData(struct Item *list) +{ + int i; + for (i = 0; i <= NUMBER_OF_ITEMS; i++) + { + printf("=========Item %d=========\n", list[i].id); + printf("Value: %.2f \n", list[i].value); + if ( list[i].previous != NULL) + printf("Previous Item %d\n", list[i].previous->id); + printf(" Next Item %d\n",list[i].next->id); + } +} + +int main() +{ + printf("Debugging demo code #2!\n"); + + struct Item * list; + list = malloc ( sizeof (struct Item) * NUMBER_OF_ITEMS); + + if (list == NULL) exit(-1); + + addItemData(list); + + printItemData(list); + + return 0; +} diff --git a/totalview-module/demos/demo02/demo02F.c b/totalview-module/demos/demo02/demo02F.c index d720e6d8978dada3d372281e9ebcf008a231baf4..b85305744846a3bd98199246fffd81b4afbf3e4c 100644 --- a/totalview-module/demos/demo02/demo02F.c +++ b/totalview-module/demos/demo02/demo02F.c @@ -6,7 +6,8 @@ #include <stdlib.h> #define NUMBER_OF_ITEMS 12 -#define DATA_SIZE (4*1024-4-4-8-8) + +#define DATA_SIZE (32*1024-4-4-8-8) struct Item { @@ -52,8 +53,6 @@ void printItemData(struct Item *list) int main() { - printf("Debugging demo code #2!\n"); - struct Item * list; list = malloc ( sizeof (struct Item) * NUMBER_OF_ITEMS);