diff --git a/benchmarks/bugs/brombo.geo b/benchmarks/2d/brombo.geo
similarity index 100%
rename from benchmarks/bugs/brombo.geo
rename to benchmarks/2d/brombo.geo
diff --git a/benchmarks/bugs/brombo2.geo b/benchmarks/2d/brombo2.geo
similarity index 100%
rename from benchmarks/bugs/brombo2.geo
rename to benchmarks/2d/brombo2.geo
diff --git a/benchmarks/bugs/fx79w151a.geo b/benchmarks/2d/fx79w151a.geo
similarity index 100%
rename from benchmarks/bugs/fx79w151a.geo
rename to benchmarks/2d/fx79w151a.geo
diff --git a/benchmarks/bugs/transfinite_tri_ugly_fix.geo b/benchmarks/2d/transfinite_tri_ugly_fix.geo
similarity index 100%
rename from benchmarks/bugs/transfinite_tri_ugly_fix.geo
rename to benchmarks/2d/transfinite_tri_ugly_fix.geo
diff --git a/benchmarks/bugs/biglc.geo b/benchmarks/3d/biglc.geo
similarity index 91%
rename from benchmarks/bugs/biglc.geo
rename to benchmarks/3d/biglc.geo
index a67e7d59d5e9e56a930e794ee18790082134cfea..61ec60919ae53ff9049b67ebe37ee8bd6345076f 100644
--- a/benchmarks/bugs/biglc.geo
+++ b/benchmarks/3d/biglc.geo
@@ -1,6 +1,4 @@
-// The old 2D iso algo and the new 2D aniso algo generate flat
-// triangles in this case
-
+Mesh.CharacteristicLengthFactor = 1000;
 Point(1) = {0, 0, 0, 0.5};
 Point(2) = {1, 0, 0, 0.5};
 Point(3) = {1, 1, 0, 0.5};
diff --git a/benchmarks/bugs/crux.geo b/benchmarks/3d/crux.geo
similarity index 100%
rename from benchmarks/bugs/crux.geo
rename to benchmarks/3d/crux.geo
diff --git a/benchmarks/bugs/many_surfaces.geo b/benchmarks/3d/many_surfaces.geo
similarity index 100%
rename from benchmarks/bugs/many_surfaces.geo
rename to benchmarks/3d/many_surfaces.geo
diff --git a/benchmarks/bugs/pb_thin_structs.geo b/benchmarks/3d/pb_thin_structs.geo
similarity index 100%
rename from benchmarks/bugs/pb_thin_structs.geo
rename to benchmarks/3d/pb_thin_structs.geo
diff --git a/benchmarks/bugs/spheremodel.geo b/benchmarks/3d/spheremodel.geo
similarity index 100%
rename from benchmarks/bugs/spheremodel.geo
rename to benchmarks/3d/spheremodel.geo
diff --git a/benchmarks/bugs/bug_single_element.geo b/benchmarks/bugs/bug_single_element.geo
deleted file mode 100644
index d3417d347a96a631aa08db5c7b652b828ff39f51..0000000000000000000000000000000000000000
--- a/benchmarks/bugs/bug_single_element.geo
+++ /dev/null
@@ -1,17 +0,0 @@
-
-// the old 2D algo chokes on this:
-
-Point(1) = {0, 0, 24.5, 90};
-Point(3) = {0, 24.5, 0, 90};
-Point(5) = {0, 0, 0, 90};
-Point(7) = {100, 42.5, 17.5, 90};
-
-Circle (1) = {1, 5, 3}; // this is bad
-// Line (1) = {1, 3}; // this is OK
-Line (9) = {1, 7};
-Line (11) = {3, 7};
-
-Line Loop (1) = {9, -11, -1}; // this is bad
-// Line Loop (1) = {-11, -1, 9}; // this is OK
-
-Ruled Surface (2) = {1};
diff --git a/benchmarks/bugs/intersect.geo b/benchmarks/bugs/intersect.geo
deleted file mode 100644
index 9a75164f49e9d18e407532de201388b714d36163..0000000000000000000000000000000000000000
--- a/benchmarks/bugs/intersect.geo
+++ /dev/null
@@ -1,20 +0,0 @@
-lc = 0.007 ;
-Point(1) = {0,  0,  0, 9.e-1 * lc} ;
-Point(2) = {.1, 0,  0, lc} ;
-Point(3) = {.1, .3, 0, lc} ;
-Point(4) = {0,  .3, 0, lc} ;
-
-//Line(1) = {1,2} ;
-//Line(2) = {3,2} ;
-//Line(3) = {3,4} ;
-//Line(4) = {4,1} ;
-
-//Line Loop(5) = {4,1,-2,3} ;
-//Plane Surface(6) = {5} ;
-
-Line(101) = {2,4};
-Line(102) = {1,3};
-
-Intersect;
-
-
diff --git a/benchmarks/bugs/thin.geo b/benchmarks/extrude/thin.geo
similarity index 100%
rename from benchmarks/bugs/thin.geo
rename to benchmarks/extrude/thin.geo