From ccc143b9ed802f5b0aa3069423227972de039ba5 Mon Sep 17 00:00:00 2001
From: Tavian Barnes <tavianator@gmail.com>
Date: Tue, 10 May 2011 13:20:49 -0600
Subject: Use arrays for PR-tree construction instead of lists.

---
 bench/libdimension/Makefile.am |   3 -
 bench/libdimension/list.c      | 136 -----------------------------------------
 2 files changed, 139 deletions(-)
 delete mode 100644 bench/libdimension/list.c

(limited to 'bench')

diff --git a/bench/libdimension/Makefile.am b/bench/libdimension/Makefile.am
index 0f64e5b..353acb3 100644
--- a/bench/libdimension/Makefile.am
+++ b/bench/libdimension/Makefile.am
@@ -20,7 +20,6 @@
 INCLUDES = -I$(top_srcdir)/libdimension
 
 EXTRA_PROGRAMS = bench-array                                                   \
-                 bench-list                                                    \
                  bench-geometry                                                \
                  bench-polynomial                                              \
                  bench-prtree
@@ -29,14 +28,12 @@ AM_CFLAGS  = $(libsandglass_CFLAGS) -fno-inline
 AM_LDFLAGS = $(libsandglass_LIBS) $(top_builddir)/libdimension/libdimension.la
 
 bench_array_SOURCES = array.c
-bench_list_SOURCES = list.c
 bench_geometry_SOURCES = geometry.c
 bench_polynomial_SOURCES = polynomial.c
 bench_prtree_SOURCES = prtree.c
 
 bench: $(EXTRA_PROGRAMS)
 	./bench-array
-	./bench-list
 	./bench-geometry
 	./bench-polynomial
 	./bench-prtree
diff --git a/bench/libdimension/list.c b/bench/libdimension/list.c
deleted file mode 100644
index e00b510..0000000
--- a/bench/libdimension/list.c
+++ /dev/null
@@ -1,136 +0,0 @@
-/*************************************************************************
- * Copyright (C) 2009-2011 Tavian Barnes <tavianator@tavianator.com>     *
- *                                                                       *
- * This file is part of The Dimension Benchmark Suite.                   *
- *                                                                       *
- * The Dimension Benchmark Suite is free software; you can redistribute  *
- * it and/or modify it under the terms of the GNU General Public License *
- * as published by the Free Software Foundation; either version 3 of the *
- * License, or (at your option) any later version.                       *
- *                                                                       *
- * The Dimension Benchmark Suite is distributed in the hope that it will *
- * be useful, but WITHOUT ANY WARRANTY; without even the implied         *
- * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See *
- * the GNU General Public License for more details.                      *
- *                                                                       *
- * You should have received a copy of the GNU General Public License     *
- * along with this program.  If not, see <http://www.gnu.org/licenses/>. *
- *************************************************************************/
-
-#include "dimension.h"
-#include <sandglass.h>
-#include <stdbool.h>
-#include <stdlib.h>
-#include <stdint.h>
-
-static bool
-dmnsn_comparator(const dmnsn_list_iterator *i, const dmnsn_list_iterator *j)
-{
-  uint32_t *a, *b;
-  a = dmnsn_list_at(i);
-  b = dmnsn_list_at(j);
-  return *a < *b;
-}
-
-int
-main(void)
-{
-  const size_t count = 32;
-  uint32_t object = 1;
-
-  sandglass_t sandglass;
-  if (sandglass_init_monotonic(&sandglass, SANDGLASS_CPUTIME) != 0) {
-    perror("sandglass_create()");
-    return EXIT_FAILURE;
-  }
-
-  /* Benchmark allocation and deallocation */
-  dmnsn_list *list;
-  sandglass_bench_fine(&sandglass, {
-    list = dmnsn_new_list(sizeof(object));
-    dmnsn_delete_list(list);
-  });
-  printf("dmnsn_new_list() + dmnsn_delete_list(): %ld\n", sandglass.grains);
-
-  /* Create our test list */
-  list = dmnsn_new_list(sizeof(object));
-
-  /* dmnsn_list_push() */
-
-  printf("dmnsn_list_push():");
-
-  for (size_t i = 0; i < count; ++i) {
-    sandglass_bench_noprecache(&sandglass, dmnsn_list_push(list, &object));
-    ++object;
-    printf(" %ld", sandglass.grains);
-  }
-  printf("\n");
-
-  /* dmnsn_list_first() */
-  dmnsn_list_iterator *ii;
-  sandglass_bench_fine(&sandglass, ii = dmnsn_list_first(list));
-  printf("dmnsn_list_first(): %ld\n", sandglass.grains);
-
-  /* dmnsn_list_last() */
-  sandglass_bench_fine(&sandglass, ii = dmnsn_list_last(list));
-  printf("dmnsn_list_last(): %ld\n", sandglass.grains);
-
-  /* dmnsn_list_get() */
-  sandglass_bench_fine(&sandglass, dmnsn_list_get(ii, &object));
-  printf("dmnsn_list_get(): %ld\n", sandglass.grains);
-
-  /* dmnsn_list_set() */
-  sandglass_bench_fine(&sandglass, dmnsn_list_set(ii, &object));
-  printf("dmnsn_list_set(): %ld\n", sandglass.grains);
-
-  /* dmnsn_list_size() */
-  size_t size;
-  sandglass_bench_fine(&sandglass, size = dmnsn_list_size(list));
-  printf("dmnsn_list_size() = %zu: %ld\n", size, sandglass.grains);
-
-  /* dmnsn_list_insert() */
-
-  printf("dmnsn_list_insert():");
-
-  for (size_t i = 0; i < count; ++i) {
-    sandglass_bench_noprecache(&sandglass,
-                               dmnsn_list_insert(list, ii, &object));
-    printf(" %ld", sandglass.grains);
-  }
-  printf("\n");
-
-  /* dmnsn_list_split() */
-  dmnsn_list *split;
-  sandglass_bench_noprecache(&sandglass, split = dmnsn_list_split(list));
-  printf("dmnsn_list_split(): %ld\n", sandglass.grains);
-
-  /* dmnsn_list_sort() */
-  sandglass_bench(&sandglass, dmnsn_list_sort(list, dmnsn_comparator));
-  printf("dmnsn_list_sort(): %ld\n", sandglass.grains);
-
-  /* dmnsn_list_remove() */
-
-  printf("dmnsn_list_remove():");
-
-  for (size_t i = 0; i < count; ++i) {
-    ii = dmnsn_list_last(split);
-    sandglass_bench_noprecache(&sandglass,
-                               dmnsn_list_remove(split, ii));
-    printf(" %ld", sandglass.grains);
-  }
-  printf("\n");
-
-  /* dmnsn_list_pop() */
-
-  printf("dmnsn_list_pop():");
-
-  for (size_t i = 0; i < count; ++i) {
-    sandglass_bench_noprecache(&sandglass, dmnsn_list_pop(list, &object));
-    printf(" %ld", sandglass.grains);
-  }
-  printf("\n");
-
-  dmnsn_delete_list(split);
-  dmnsn_delete_list(list);
-  return EXIT_SUCCESS;
-}
-- 
cgit v1.2.3