//don't want to parallelize this since each iteration is already parallelized. private StlClassifier[] BuildClassifiers(Tag[] tags, int cores) { StlClassifier[] output = new StlClassifier[tags.Length]; for (int i = 0; i < tags.Length; i++) { //StlClassifier current_classifier = new StlClassifier() } return(null); }
//No parallelization, RunClassify is parallelized. private StlClassifier[] BuildClassifiers(Tag[] tags, int cores, int searchresolution) { StlClassifier[] output = new StlClassifier[tags.Length]; for (int i = 0; i < tags.Length; i++) { StlClassifier current_classifier = new StlClassifier(tags[i].RegionFilename, searchresolution); //oof this is a lot current_classifier.RunClassify(cores); output[i] = current_classifier; } return(output); }
public static void Main(string[] args) { int samplecount = 20; List <string> failmessages = new List <string>(); bool[] successes = new bool[samplecount]; for (int y = 0; y < samplecount; y++) { successes[y] = true; } for (int i = 0; i < samplecount; i++) { Console.WriteLine("Trial " + i.ToString() + "\n"); try { StopWatch t1 = new StopWatch("load"); StopWatch t2 = new StopWatch("compute"); t1.tic(); StlClassifier classifier = new StlClassifier("./test.stl", 40); t1.toc(); Console.WriteLine(t1.Result()); t2.tic(); classifier.RunClassify(get_cores()); t2.toc(); Console.WriteLine(t2.Result()); StlClassificationTable table = classifier.FacetLookupTable; Console.WriteLine("Success"); } catch (Exception e) { successes[i] = false; failmessages.Add("Trial 1: " + e.Message); } } Console.WriteLine(get_true_false(successes)); if (failmessages.Count > 0) { File.WriteAllLines("./errors.log", failmessages.ToArray()); } else { File.WriteAllLines("./errors.log", new string[] { "No failures." }); } }