coNCePTuaL

A network correctness and performance testing language.
Download

coNCePTuaL Ranking & Summary

Advertisement

  • Rating:
  • License:
  • BSD License
  • Price:
  • FREE
  • Publisher Name:
  • Scott Pakin
  • Publisher web site:
  • http://www.pakin.org/~scott/

coNCePTuaL Tags


coNCePTuaL Description

A network correctness and performance testing language. coNCePTuaL software is a tool designed to facilitate rapidly generating programs that measure the performance and/or test the correctness of networks and network protocol layers.coNCePTuaL centers around a simple, domain-specific progamming-language; a few lines of coNCePTuaL code can produce programs that would take significantly more effort to write in a conventional programming language.One of coNCePTuaL's goals is to raise network benchmarking from an art to a science. To that end, coNCePTuaL programs log not only measurement data but also a wealth of information about the experimental setup, making it easy for someone else to reproduce your performance tests.Exemplenumreps is "Number of repetitions" and comes from "--reps" or "-r" with default 100.For numreps repetitions plus 2 warmup repetitions { task 0 resets its counters then task 0 sends a 1 megabyte message to task 1 then task 1 sends a 1 megabyte message to task 0 then task 0 logs elapsed_usecs/2 as "One-way latency (us)" and the median of (total_bytes/elapsed_usecs)*1E6/1M as "Bandwidth (MB/s)"}The data is stored in an easy-to-parse comma-separated value (CSV) format with the first row of column headers taken right from the program. The second row of headers indicates how the data in each column were aggregated.What's important, however, is all of the other information in the log file. coNCePTuaL log files are intended to function as a laboratory notebook, including not only the results of an experiment but also a precise description of the setup that led to those results. How many processors are in my system? How fast are they? What compiler and compiler options were used to compile simple? What command-line parameters were passed to the program? It's all in the log file.The log files also lists the complete program source code so there's no ambiguity about what was measured. You can look at a coNCePTuaL log file a year in the future and still know exactly what the measurements represent?a lot more useful than a performance test which spits out only 397.2 and requires you to recall what that refers to. What's New in This Release: · Version 1.1 of coNCePTuaL is largely a bug-fix release -- lots of · tiny, little bug fixes that impact primarily the coNCePTuaL build · process. However, the coNCePTuaL language does provide one useful new · feature: The IS IN construct now accepts sets of numbers just like the · FOR EACH construct. For example, coNCePTuaL programs can now include statements like the following: · TASKS t SUCH THAT t IS IN {2, 5, 8, ..., num_tasks-1} SEND A · 32-KILOBYTE MESSAGE TO TASKS r SUCH THAT r IS IN {t-1, t-2}. · The previous range syntax for IS IN (e.g. "t IS IN ") is now · deprecated as the new, set syntax provides a proper superset of the · range syntax's functionality (e.g., "t IS IN {3, ..., 10}"). · Programs built with coNCePTuaL v1.1 have run successfully across all · 147,456 cores (36,864 nodes) of Dawn, the IBM BlueGene/P system · installed at Lawrence Livermore National Laboratory. · The coNCePTuaL autopackage is now built as a hybrid 32/64-bit package. · Execute coNCePTuaL_1.1.package on either a 32- or 64-bit x86 system, · and it should automatically install the correct libraries for that · platform. · See the change log for the complete details of everything that's · changed since version 1.0.


coNCePTuaL Related Software