List of usage examples for org.apache.commons.lang3.time StopWatch split
public void split()
Split the time.
From source file:broadwick.stochastic.StochasticSimulator.java
/** * Start the simulation with the given {@link SimulationController}. *//*from w ww . j a v a 2 s. c om*/ public final void run() { try { // If we haven't set a controller for the process then set the default one with a max time of 5 // (unknonw units). if (controller == null) { controller = new DefaultController(5); } init(); // tell our observers that the simulation has started for (Observer observer : observers) { observer.started(); } final StopWatch sw = new StopWatch(); sw.start(); while (controller.goOn(this)) { // The performStep() method is implemented by the specifc stochastic algorithm (e.g. Gillespie's) performStep(); //amountManager.doHouseKeeping(); // tell our observers that the step has been completed. for (Observer observer : observers) { observer.step(); } sw.split(); log.trace("Performed step in {}", sw.toSplitString()); } // tell our observers that the simulation has finished. for (Observer observer : observers) { observer.finished(); } } catch (Exception e) { log.error("Error running stochastic simulation. {}", Throwables.getStackTraceAsString(e)); throw e; } }
From source file:com.github.naoghuman.testdata.abclist.service.TopicService.java
@Override protected Task<Void> createTask() { return new Task<Void>() { {/*from w w w .ja v a 2s . co m*/ updateProgress(0, saveMaxEntities); } @Override protected Void call() throws Exception { LoggerFacade.getDefault().deactivate(Boolean.TRUE); final StopWatch stopWatch = new StopWatch(); stopWatch.start(); final CrudService crudService = DatabaseFacade.getDefault().getCrudService(entityName); long id = -1_000_000_000L + DatabaseFacade.getDefault().getCrudService().count(entityName); for (int index = 0; index < saveMaxEntities; index++) { final Topic topic = ModelProvider.getDefault().getTopic(id++, TestdataGenerator.getDefault().getUniqueTitles(index)); topic.setDescription(TestdataGenerator.getDefault().getDescription()); topic.setGenerationTime(TopicService.this.createGenerationTime()); crudService.create(topic); updateProgress(index, saveMaxEntities); } LoggerFacade.getDefault().deactivate(Boolean.FALSE); stopWatch.split(); LoggerFacade.getDefault().debug(this.getClass(), " + " + stopWatch.toSplitString() + " for " + saveMaxEntities + " Topics."); // NOI18N stopWatch.stop(); return null; } }; }
From source file:com.github.naoghuman.testdata.abclist.service.TermService.java
@Override protected Task<Void> createTask() { return new Task<Void>() { {/* w ww . ja v a2 s .c om*/ updateProgress(0, saveMaxEntities); } @Override protected Void call() throws Exception { LoggerFacade.getDefault().deactivate(Boolean.TRUE); final StopWatch stopWatch = new StopWatch(); stopWatch.start(); final CrudService crudService = DatabaseFacade.getDefault().getCrudService(entityName); long id = -1_000_000_000L + DatabaseFacade.getDefault().getCrudService().count(entityName); for (int index = 0; index < saveMaxEntities; index++) { final Term term = ModelProvider.getDefault() .getTerm(TestdataGenerator.getDefault().getUniqueTitles(index)); term.setId(id++); term.setDescription(TestdataGenerator.getDefault().getDescription()); term.setGenerationTime(TermService.this.createGenerationTime()); crudService.create(term); updateProgress(index, saveMaxEntities); } LoggerFacade.getDefault().deactivate(Boolean.FALSE); stopWatch.split(); LoggerFacade.getDefault().debug(this.getClass(), " + " + stopWatch.toSplitString() + " for " + saveMaxEntities + " Terms."); // NOI18N stopWatch.stop(); return null; } }; }
From source file:com.github.naoghuman.testdata.abclist.service.LinkService.java
@Override protected Task<Void> createTask() { return new Task<Void>() { {/*from ww w.j av a2 s. c o m*/ updateProgress(0, saveMaxEntities); } @Override protected Void call() throws Exception { LoggerFacade.getDefault().deactivate(Boolean.TRUE); final StopWatch stopWatch = new StopWatch(); stopWatch.start(); final CrudService crudService = DatabaseFacade.getDefault().getCrudService(entityName); long id = -1_000_000_000L + DatabaseFacade.getDefault().getCrudService().count(entityName); for (int index = 0; index < saveMaxEntities; index++) { final Link link = ModelProvider.getDefault().getLink(); link.setAlias("Google " + id); // NOI18N link.setDescription(TestdataGenerator.getDefault().getDescription()); link.setFavorite(TestdataGenerator.RANDOM.nextDouble() < 0.01d); link.setGenerationTime(LinkService.this.createGenerationTime()); link.setId(id++); link.setImage("image-name"); // NOI18N // TODO add real image name link.setMarkAsChanged(false); link.setUrl("https:////www.google.com"); // NOI18N crudService.create(link); updateProgress(index, saveMaxEntities); } LoggerFacade.getDefault().deactivate(Boolean.FALSE); stopWatch.split(); LoggerFacade.getDefault().debug(this.getClass(), " + " + stopWatch.toSplitString() + " for " + saveMaxEntities + " Links."); // NOI18N stopWatch.stop(); return null; } }; }
From source file:com.github.naoghuman.testdata.abclist.service.ExerciseTermService.java
@Override protected Task<Void> createTask() { return new Task<Void>() { {/*from w w w . j a v a2 s. c om*/ updateProgress(0, saveMaxEntities); } @Override protected Void call() throws Exception { LoggerFacade.getDefault().deactivate(Boolean.TRUE); final StopWatch stopWatch = new StopWatch(); stopWatch.start(); final ObservableList<Topic> topics = SqlProvider.getDefault().findAllTopics(); final ObservableList<Term> terms = SqlProvider.getDefault().findAllTerms(); final int sizeTerms = terms.size(); final AtomicInteger index = new AtomicInteger(0); final CrudService crudService = DatabaseFacade.getDefault().getCrudService(entityName); final AtomicLong id = new AtomicLong( -1_000_000_000L + DatabaseFacade.getDefault().getCrudService().count(entityName)); topics.stream().forEach(topic -> { final ObservableList<Exercise> exercises = SqlProvider.getDefault() .findAllExercisesWithTopicId(topic.getId()); exercises.stream().filter(exercise -> exercise.isReady()).forEach(exercise -> { final int maxExerciseTerms = TestdataGenerator.RANDOM.nextInt(70) + 10; for (int i = 0; i < maxExerciseTerms; i++) { final Term term = terms.get(TestdataGenerator.RANDOM.nextInt(sizeTerms)); final ExerciseTerm exerciseTerm = ModelProvider.getDefault().getExerciseTerm(); exerciseTerm.setExerciseId(exercise.getId()); exerciseTerm.setId(id.getAndIncrement()); exerciseTerm.setTermId(term.getId()); crudService.create(exerciseTerm); } }); updateProgress(index.getAndIncrement(), saveMaxEntities); }); LoggerFacade.getDefault().deactivate(Boolean.FALSE); stopWatch.split(); LoggerFacade.getDefault().debug(this.getClass(), " + " + stopWatch.toSplitString() + " for " + saveMaxEntities + " ExerciseTerms."); // NOI18N stopWatch.stop(); return null; } }; }
From source file:com.github.naoghuman.testdata.abclist.service.ExerciseService.java
@Override protected Task<Void> createTask() { return new Task<Void>() { {/*from w ww . ja v a2 s .c o m*/ updateProgress(0, saveMaxEntities); } @Override protected Void call() throws Exception { LoggerFacade.getDefault().deactivate(Boolean.TRUE); final StopWatch stopWatch = new StopWatch(); stopWatch.start(); final ObservableList<Topic> topics = SqlProvider.getDefault().findAllTopics(); final int removeMaxTopics = (int) (Double.parseDouble(String.valueOf(topics.size())) * 0.001d); for (int counter = removeMaxTopics; counter > 0; counter--) { topics.remove(TestdataGenerator.RANDOM.nextInt(topics.size())); } final int sizeTopics = topics.size(); final CrudService crudService = DatabaseFacade.getDefault().getCrudService(entityName); final ETime[] times = ETime.values(); final int sizeTimes = times.length; long id = -1_000_000_000L + DatabaseFacade.getDefault().getCrudService().count(entityName); for (int index = 0; index < saveMaxEntities; index++) { final Exercise exercise = ModelProvider.getDefault().getExercise(); exercise.setChoosenTime((times[TestdataGenerator.RANDOM.nextInt(sizeTimes)]).toString()); exercise.setConsolidated(false); // TODO later ? exercise.setFinishedTime(ExerciseService.this.createGenerationTime()); exercise.setGenerationTime(ExerciseService.this.createGenerationTime()); if (exercise.getGenerationTime() > exercise.getFinishedTime()) { final long generationTime = exercise.getGenerationTime(); final long finishedTime = exercise.getFinishedTime(); exercise.setGenerationTime(finishedTime); exercise.setFinishedTime(generationTime); } exercise.setId(id++); exercise.setReady(TestdataGenerator.RANDOM.nextDouble() > 0.001d); // TODO if ready then add terms final long topicId = topics.get(TestdataGenerator.RANDOM.nextInt(sizeTopics)).getId(); exercise.setTopicId(topicId); crudService.create(exercise); updateProgress(index, saveMaxEntities); } LoggerFacade.getDefault().deactivate(Boolean.FALSE); stopWatch.split(); LoggerFacade.getDefault().debug(this.getClass(), " + " + stopWatch.toSplitString() + " for " + saveMaxEntities + " Exercises."); // NOI18N stopWatch.stop(); return null; } }; }
From source file:com.github.naoghuman.testdata.abclist.service.LinkMappingService.java
@Override protected Task<Void> createTask() { return new Task<Void>() { {/*w w w .j ava2 s . c o m*/ updateProgress(0, saveMaxEntities); } @Override protected Void call() throws Exception { LoggerFacade.getDefault().deactivate(Boolean.TRUE); final StopWatch stopWatch = new StopWatch(); stopWatch.start(); /* 1) over all links 2) if random > 0.005d then do 3) otherwise create a link without parent 4) get 1-10 terms, create LinkMapping foreach of them - means a link is mapped to 1-10 terms 5) get 0-10 topics, create LinkMapping foreach of them - means a link is mapped to 0-10 topics */ final ObservableList<Link> links = SqlProvider.getDefault().findAllLinks(); final ObservableList<Term> terms = SqlProvider.getDefault().findAllTerms(); final int sizeTerms = terms.size(); final ObservableList<Topic> topics = SqlProvider.getDefault().findAllTopics(); final int sizeTopics = topics.size(); final AtomicInteger index = new AtomicInteger(0); final CrudService crudService = DatabaseFacade.getDefault().getCrudService(entityName); final AtomicLong id = new AtomicLong( -1_000_000_000L + DatabaseFacade.getDefault().getCrudService().count(entityName)); links.stream() // 1 .forEach(link -> { // 2) Should the [Link] have a parent final double random = TestdataGenerator.RANDOM.nextDouble(); if (random > 0.005d) { // 4) Create [Link]s with parent [Term] final int maxTerms = TestdataGenerator.RANDOM.nextInt(10) + 1; for (int i = 0; i < maxTerms; i++) { final LinkMapping lm = ModelProvider.getDefault().getLinkMapping(); lm.setId(id.getAndIncrement()); final Term term = terms.get(TestdataGenerator.RANDOM.nextInt(sizeTerms)); lm.setParentId(term.getId()); lm.setParentType(LinkMappingType.TERM); lm.setChildId(link.getId()); lm.setChildType(LinkMappingType.LINK); crudService.create(lm); } // 5) Create [Link]s with parent [Topic] final int maxTopics = TestdataGenerator.RANDOM.nextInt(11); for (int i = 0; i < maxTopics; i++) { final LinkMapping lm = ModelProvider.getDefault().getLinkMapping(); lm.setId(id.getAndIncrement()); final Topic topic = topics.get(TestdataGenerator.RANDOM.nextInt(sizeTopics)); lm.setParentId(topic.getId()); lm.setParentType(LinkMappingType.TOPIC); lm.setChildId(link.getId()); lm.setChildType(LinkMappingType.LINK); crudService.create(lm); } } else { // 3) Some [Link]s havn't a parent final LinkMapping lm = ModelProvider.getDefault().getLinkMapping(); lm.setId(id.getAndIncrement()); lm.setParentId(IDefaultConfiguration.DEFAULT_ID); lm.setParentType(LinkMappingType.NOT_DEFINED); lm.setChildId(link.getId()); lm.setChildType(LinkMappingType.LINK); crudService.create(lm); } updateProgress(index.getAndIncrement(), saveMaxEntities); }); LoggerFacade.getDefault().deactivate(Boolean.FALSE); stopWatch.split(); LoggerFacade.getDefault().debug(this.getClass(), " + " + stopWatch.toSplitString() + " for " + saveMaxEntities + " LinkMappings."); // NOI18N stopWatch.stop(); return null; } }; }
From source file:org.jodconverter.PerformanceITest.java
private void convertFileXTimes(final File inputFile, final DocumentFormat inputFormat, final DocumentFormat outputFormat) throws IOException, OfficeException { final String baseName = FilenameUtils.getBaseName(inputFile.getName()); long lastSplitTime = 0L; final StopWatch stopWatch = new StopWatch(); stopWatch.start();/* w ww . j a va2 s . c o m*/ for (int i = 0; i < MAX_CONVERSIONS; i++) { final File outputFile = File.createTempFile("test", "." + outputFormat.getExtension()); outputFile.deleteOnExit(); LOGGER.info(baseName + " -- converting " + inputFormat.getExtension() + " to " + outputFormat.getExtension() + "... "); LocalConverter.make().convert(inputFile).as(inputFormat).to(outputFile).as(outputFormat).execute(); stopWatch.split(); final long splitTime = stopWatch.getSplitTime(); LOGGER.info(baseName + "-- conversion done in " + (splitTime - lastSplitTime) + " millisec."); lastSplitTime = splitTime; } stopWatch.stop(); final long conversionTime = stopWatch.getTime(); LOGGER.info(baseName + "-- all " + MAX_CONVERSIONS + " conversions done in " + getDurationBreakdown(conversionTime) + ". The average per document is " + (conversionTime / MAX_CONVERSIONS) + " ms."); }
From source file:org.sparkbit.jsonrpc.JSONRPCController.java
public boolean waitForTxSelectable(Transaction tx) { int n = jetty.sendAssetTimeout; if (n == 0)//from www. ja va2 s . co m return true; // don't wait if timeout period is 0 final StopWatch stopwatch = new StopWatch(); stopwatch.start(); boolean timedOut = false; while (!DefaultCoinSelector.isSelectable(tx)) { try { Thread.sleep(WAIT_FOR_TX_SELECTABLE_SLEEP_INTERVAL); } catch (InterruptedException e) { } stopwatch.split(); long elapsed = stopwatch.getSplitTime(); stopwatch.unsplit(); // log.debug("elapsed = " + elapsed); if (elapsed > n) { timedOut = true; log.debug("Waiting in loop to be selectable timed out for txid " + tx.getHashAsString()); break; // timed out waiting for tx to be selectable } } stopwatch.stop(); if (!timedOut) { log.debug("Waiting in loop to be selectable took " + stopwatch + " for txid " + tx.getHashAsString() + " and broadcast count is " + tx.getConfidence().getBroadcastByCount()); } return true; }