Are you over 18 and want to see adult content?
More Annotations
A complete backup of nyclgbtsites.org
Are you over 18 and want to see adult content?
A complete backup of goprincetontigers.com
Are you over 18 and want to see adult content?
A complete backup of thecuriousbrain.com
Are you over 18 and want to see adult content?
A complete backup of interaktivjatszoeszkoz.hu
Are you over 18 and want to see adult content?
Favourite Annotations
A complete backup of https://twpro.jp/kichikudoujin
Are you over 18 and want to see adult content?
A complete backup of https://www.setedit.de/SetEdit.php?spr=1&Editor=106
Are you over 18 and want to see adult content?
A complete backup of https://xapplekambikadhakal.blogspot.com/
Are you over 18 and want to see adult content?
A complete backup of https://islanddrug.com/
Are you over 18 and want to see adult content?
A complete backup of https://www.dentiland.net/cosmetic-dentistry
Are you over 18 and want to see adult content?
Text
grown rather large.
DISK-FILLTEST
CODING TRICKS 101: HOW TO SAVE THE ASSEMBLER CODE The non-assembler options -g -fverbose-asm -masm=intel yield a more detailed assembler listing. The debug -g interleaves the assembler listing with the original C code. With -fverbose-asm, gcc outputs some additional information about which variable is manipulated in a register. And -masm=intel changes the assembler mnemonics to Intel's style, instead of the AT&T style. THE SOUND OF SORTING Posted on 2013-05-22, last updated 2014-05-15 by Timo Bingmann at Permlink.. Sorting algorithms are an essential chapter in undergraduate computer science education. Due to their easy to explain nature and fairly straight-forward analysis, this set of algorithms offers a convenient introduction to the methods and techniques of theoretical computer science and algorithm analysis. PMBW - PARALLEL MEMORY BANDWIDTH RESULTS - PANTHEMA.NET pmbw - Parallel Memory Bandwidth Results. This page collects results of the pmbw benchmark tool from various systems. The following table shows an overview of all results, including links to the detailed test page and a summary of the key bandwidth values. APPENDIX: __CXA_DEMANGLE DOCUMENTATION Appendix: __cxa_demangle Documentation. A NUL -terminated character string containing the name to be demangled. A region of memory, allocated with malloc, of *length bytes, into which the demangled name is stored. If output_buffer is not long enough, it is expanded using realloc. output_buffer may instead be NULL; in that case, thedemangled
NOTE ABOUT THE NEW TLX LIBRARY OF ADVANCED C++ DATA Last year on February 19th, I started a new github repository called tlx with the goal of de-duplicating code from three projects: Thrill, STXXL, and a private project. The idea came up after a STXXL code workshop in Frankfurt (fashionably called hackathons nowadays). /2013/DISK-FILLTEST/DISK-FILLTEST-0.8.2/DISK-FILLTEST.C Copyright 2005-2020 Timo Bingmann - ImpressumTimo Bingmann - Impressum FLEX BISON C++ EXAMPLE: MAIN PAGEC++ CODE SNIPPET
The zlib library can be found on virtually every computer. It is THE general-purpose lossless patent-free compression library. This small C++ code snippet features a pair of functions which use this ubiquitous library to compress ordinary STL strings. There are many uses for this code snippet, like compressing string data stored in adatabase
WEBLOG - PANTHEMA.NETTIMO BINGMANNPERMLINKSORTINGELECTRONICSLEDSFRONTPAGE Welcome to panthema.net. This website is a diverse collection of interesting ideas, thus it is panthematic.It contains free open-source software and projects (FOSS), computer science research results, blog articles and more, all created by myself, Timo Bingmann.Over the years, the amount of information, source code and other content hasgrown rather large.
DISK-FILLTEST
CODING TRICKS 101: HOW TO SAVE THE ASSEMBLER CODE The non-assembler options -g -fverbose-asm -masm=intel yield a more detailed assembler listing. The debug -g interleaves the assembler listing with the original C code. With -fverbose-asm, gcc outputs some additional information about which variable is manipulated in a register. And -masm=intel changes the assembler mnemonics to Intel's style, instead of the AT&T style. THE SOUND OF SORTING Posted on 2013-05-22, last updated 2014-05-15 by Timo Bingmann at Permlink.. Sorting algorithms are an essential chapter in undergraduate computer science education. Due to their easy to explain nature and fairly straight-forward analysis, this set of algorithms offers a convenient introduction to the methods and techniques of theoretical computer science and algorithm analysis. PMBW - PARALLEL MEMORY BANDWIDTH RESULTS - PANTHEMA.NET pmbw - Parallel Memory Bandwidth Results. This page collects results of the pmbw benchmark tool from various systems. The following table shows an overview of all results, including links to the detailed test page and a summary of the key bandwidth values. APPENDIX: __CXA_DEMANGLE DOCUMENTATION Appendix: __cxa_demangle Documentation. A NUL -terminated character string containing the name to be demangled. A region of memory, allocated with malloc, of *length bytes, into which the demangled name is stored. If output_buffer is not long enough, it is expanded using realloc. output_buffer may instead be NULL; in that case, thedemangled
NOTE ABOUT THE NEW TLX LIBRARY OF ADVANCED C++ DATA Last year on February 19th, I started a new github repository called tlx with the goal of de-duplicating code from three projects: Thrill, STXXL, and a private project. The idea came up after a STXXL code workshop in Frankfurt (fashionably called hackathons nowadays). /2013/DISK-FILLTEST/DISK-FILLTEST-0.8.2/DISK-FILLTEST.C Copyright 2005-2020 Timo Bingmann - ImpressumTimo Bingmann - Impressum FLEX BISON C++ EXAMPLE: MAIN PAGEC++ CODE SNIPPET
The zlib library can be found on virtually every computer. It is THE general-purpose lossless patent-free compression library. This small C++ code snippet features a pair of functions which use this ubiquitous library to compress ordinary STL strings. There are many uses for this code snippet, like compressing string data stored in adatabase
ABOUT MYSELF
Academic Education and Research. Timo Bingmann is currently a PostDoc in Prof. Peter Sanders' Group at the Institute of Theoretical Informatics, Algorithmics, which is part of the Karlsruhe Institute of Technology.He received a Dr. rer. nat. from KIT in 2018 for his PMBW - PARALLEL MEMORY BANDWIDTH BENCHMARK / MEASUREMENT pmbw - Parallel Memory Bandwidth Benchmark / Measurement. Posted on 2013-07-08, last updated 2013-12-12 by Timo Bingmann at Permlink.. Summary. The tool pmbw is a set of assembler routines to measure the parallel memory (cache and RAM) bandwidth of modern multi-core machines. Memory bandwidth is one of the key performance factors of any computer system.MALLOC_COUNT
Posted on 2013-03-16, last updated 2014-09-19 by Timo Bingmann at Permlink.. malloc_count provides a set of source code tools to measure the amount of allocated memory of a program at run-time.The code library provides facilities to. measure the current and peak heap memory allocation, and; write a memory profile for plotting, see the figure on the right. TUTORIAL ON BOOST.SPIRIT AT C++ USER GROUP KARLSRUHE On September 12th, 2018, I gave another 90min talk with live-coding examples in German at the C++ User Group Karlsruhe in rooms of the Karlsruhe Institute of Technology (KIT).. This time I was asked to present a more advanced topic around C++ and libraries and I chose to present a tutorial on Boost.Spirit.. Boost.Spirit is a parser and generator template meta-programming framework and FLEX BISON C++ EXAMPLE: MAIN PAGE Summary. This example shows how to use both Flex and Bison in C++ mode. This way both lexer and parser code and data is encapsulated into classes. Thus the lexer and parser are fully re-entrant, because all state variables are contained in the class objects. Furthermore multiple different lexer-parser pairs can easily be linked into onebinary
/2013/DISK-FILLTEST/DISK-FILLTEST-0.8.2/DISK-FILLTEST.C Copyright 2005-2020 Timo Bingmann - ImpressumTimo Bingmann - Impressum NVME "DISK" BANDWIDTH AND LATENCY FOR BATCHED BLOCK Last week I had the pleasure of being invited to the Dagstuhl seminar 19111 on Theoretical Models of Storage Systems.I gave a talk on the history of STXXL and Thrill, but also wanted to include some current developments.Most interesting I found is the gap closing between RAM and disk bandwidth due to the (relatively) new Non-Volatile Memory Express (NVMe) storage devices. /2013/DISK-FILLTEST/DISK-FILLTEST-0.8.2/README # disk-filltest - Simple Tool to Detect Bad Disks by Filling with Random Data # The number of hard disk produced in the last five yearsis huge.
AWS R4.16XLARGE
AWS r4.16xlarge - Intel Xeon E5-2686 v4, 2.30 GHz 488GB - Parallel Memory Bandwidth Measurement ResultsC++ CODE SNIPPET
To demonstrate the stack trace function I wrote the following small test source code. It calls print_stacktrace() four times from different functions, that were specifically crafted to produce complex names. I left it uncommented, because the functions have no realpurpose.
WEBLOG - PANTHEMA.NETTIMO BINGMANNPERMLINKSORTINGELECTRONICSLEDSFRONTPAGE Welcome to panthema.net. This website is a diverse collection of interesting ideas, thus it is panthematic.It contains free open-source software and projects (FOSS), computer science research results, blog articles and more, all created by myself, Timo Bingmann.Over the years, the amount of information, source code and other content hasgrown rather large.
DISK-FILLTEST
CODING TRICKS 101: HOW TO SAVE THE ASSEMBLER CODE The non-assembler options -g -fverbose-asm -masm=intel yield a more detailed assembler listing. The debug -g interleaves the assembler listing with the original C code. With -fverbose-asm, gcc outputs some additional information about which variable is manipulated in a register. And -masm=intel changes the assembler mnemonics to Intel's style, instead of the AT&T style. THE SOUND OF SORTING Posted on 2013-05-22, last updated 2014-05-15 by Timo Bingmann at Permlink.. Sorting algorithms are an essential chapter in undergraduate computer science education. Due to their easy to explain nature and fairly straight-forward analysis, this set of algorithms offers a convenient introduction to the methods and techniques of theoretical computer science and algorithm analysis. PMBW - PARALLEL MEMORY BANDWIDTH RESULTS - PANTHEMA.NET pmbw - Parallel Memory Bandwidth Results. This page collects results of the pmbw benchmark tool from various systems. The following table shows an overview of all results, including links to the detailed test page and a summary of the key bandwidth values. APPENDIX: __CXA_DEMANGLE DOCUMENTATION Appendix: __cxa_demangle Documentation. A NUL -terminated character string containing the name to be demangled. A region of memory, allocated with malloc, of *length bytes, into which the demangled name is stored. If output_buffer is not long enough, it is expanded using realloc. output_buffer may instead be NULL; in that case, thedemangled
NOTE ABOUT THE NEW TLX LIBRARY OF ADVANCED C++ DATA Last year on February 19th, I started a new github repository called tlx with the goal of de-duplicating code from three projects: Thrill, STXXL, and a private project. The idea came up after a STXXL code workshop in Frankfurt (fashionably called hackathons nowadays). /2013/DISK-FILLTEST/DISK-FILLTEST-0.8.2/DISK-FILLTEST.C Copyright 2005-2020 Timo Bingmann - ImpressumTimo Bingmann - Impressum FLEX BISON C++ EXAMPLE: MAIN PAGEC++ CODE SNIPPET
The zlib library can be found on virtually every computer. It is THE general-purpose lossless patent-free compression library. This small C++ code snippet features a pair of functions which use this ubiquitous library to compress ordinary STL strings. There are many uses for this code snippet, like compressing string data stored in adatabase
WEBLOG - PANTHEMA.NETTIMO BINGMANNPERMLINKSORTINGELECTRONICSLEDSFRONTPAGE Welcome to panthema.net. This website is a diverse collection of interesting ideas, thus it is panthematic.It contains free open-source software and projects (FOSS), computer science research results, blog articles and more, all created by myself, Timo Bingmann.Over the years, the amount of information, source code and other content hasgrown rather large.
DISK-FILLTEST
CODING TRICKS 101: HOW TO SAVE THE ASSEMBLER CODE The non-assembler options -g -fverbose-asm -masm=intel yield a more detailed assembler listing. The debug -g interleaves the assembler listing with the original C code. With -fverbose-asm, gcc outputs some additional information about which variable is manipulated in a register. And -masm=intel changes the assembler mnemonics to Intel's style, instead of the AT&T style. THE SOUND OF SORTING Posted on 2013-05-22, last updated 2014-05-15 by Timo Bingmann at Permlink.. Sorting algorithms are an essential chapter in undergraduate computer science education. Due to their easy to explain nature and fairly straight-forward analysis, this set of algorithms offers a convenient introduction to the methods and techniques of theoretical computer science and algorithm analysis. PMBW - PARALLEL MEMORY BANDWIDTH RESULTS - PANTHEMA.NET pmbw - Parallel Memory Bandwidth Results. This page collects results of the pmbw benchmark tool from various systems. The following table shows an overview of all results, including links to the detailed test page and a summary of the key bandwidth values. APPENDIX: __CXA_DEMANGLE DOCUMENTATION Appendix: __cxa_demangle Documentation. A NUL -terminated character string containing the name to be demangled. A region of memory, allocated with malloc, of *length bytes, into which the demangled name is stored. If output_buffer is not long enough, it is expanded using realloc. output_buffer may instead be NULL; in that case, thedemangled
NOTE ABOUT THE NEW TLX LIBRARY OF ADVANCED C++ DATA Last year on February 19th, I started a new github repository called tlx with the goal of de-duplicating code from three projects: Thrill, STXXL, and a private project. The idea came up after a STXXL code workshop in Frankfurt (fashionably called hackathons nowadays). /2013/DISK-FILLTEST/DISK-FILLTEST-0.8.2/DISK-FILLTEST.C Copyright 2005-2020 Timo Bingmann - ImpressumTimo Bingmann - Impressum FLEX BISON C++ EXAMPLE: MAIN PAGEC++ CODE SNIPPET
The zlib library can be found on virtually every computer. It is THE general-purpose lossless patent-free compression library. This small C++ code snippet features a pair of functions which use this ubiquitous library to compress ordinary STL strings. There are many uses for this code snippet, like compressing string data stored in adatabase
ABOUT MYSELF
Academic Education and Research. Timo Bingmann is currently a PostDoc in Prof. Peter Sanders' Group at the Institute of Theoretical Informatics, Algorithmics, which is part of the Karlsruhe Institute of Technology.He received a Dr. rer. nat. from KIT in 2018 for his PMBW - PARALLEL MEMORY BANDWIDTH BENCHMARK / MEASUREMENT pmbw - Parallel Memory Bandwidth Benchmark / Measurement. Posted on 2013-07-08, last updated 2013-12-12 by Timo Bingmann at Permlink.. Summary. The tool pmbw is a set of assembler routines to measure the parallel memory (cache and RAM) bandwidth of modern multi-core machines. Memory bandwidth is one of the key performance factors of any computer system.MALLOC_COUNT
Posted on 2013-03-16, last updated 2014-09-19 by Timo Bingmann at Permlink.. malloc_count provides a set of source code tools to measure the amount of allocated memory of a program at run-time.The code library provides facilities to. measure the current and peak heap memory allocation, and; write a memory profile for plotting, see the figure on the right. TUTORIAL ON BOOST.SPIRIT AT C++ USER GROUP KARLSRUHE On September 12th, 2018, I gave another 90min talk with live-coding examples in German at the C++ User Group Karlsruhe in rooms of the Karlsruhe Institute of Technology (KIT).. This time I was asked to present a more advanced topic around C++ and libraries and I chose to present a tutorial on Boost.Spirit.. Boost.Spirit is a parser and generator template meta-programming framework and /2013/DISK-FILLTEST/DISK-FILLTEST-0.8.2/DISK-FILLTEST.C Copyright 2005-2020 Timo Bingmann - ImpressumTimo Bingmann - Impressum /2013/DISK-FILLTEST/DISK-FILLTEST-0.8.2/README # disk-filltest - Simple Tool to Detect Bad Disks by Filling with Random Data # The number of hard disk produced in the last five yearsis huge.
AWS R4.16XLARGE
AWS r4.16xlarge - Intel Xeon E5-2686 v4, 2.30 GHz 488GB - Parallel Memory Bandwidth Measurement ResultsC++ CODE SNIPPET
To demonstrate the stack trace function I wrote the following small test source code. It calls print_stacktrace() four times from different functions, that were specifically crafted to produce complex names. I left it uncommented, because the functions have no realpurpose.
BOOST.SPIRIT TUTORIAL Boost Spirit Parser for Stock Market Data Example: 2018-09-10-13-36;12014.57;12016.30;12014.57;12016.23;1929;0; std::istringstream in(web.data()); std::string line; FLEX BISON C++ EXAMPLE: EXAMPLEFLEXLEXER CLASS REFERENCE Pushes the new state onto the stack. The new state becomes the current state. This function will allocate the stack if necessary. Parameters: WEBLOG - PANTHEMA.NETTIMO BINGMANNPERMLINKSORTINGELECTRONICSLEDSFRONTPAGE Welcome to panthema.net. This website is a diverse collection of interesting ideas, thus it is panthematic.It contains free open-source software and projects (FOSS), computer science research results, blog articles and more, all created by myself, Timo Bingmann.Over the years, the amount of information, source code and other content hasgrown rather large.
THE SOUND OF SORTING Posted on 2013-05-22, last updated 2014-05-15 by Timo Bingmann at Permlink.. Sorting algorithms are an essential chapter in undergraduate computer science education. Due to their easy to explain nature and fairly straight-forward analysis, this set of algorithms offers a convenient introduction to the methods and techniques of theoretical computer science and algorithm analysis. CODING TRICKS 101: HOW TO SAVE THE ASSEMBLER CODE The non-assembler options -g -fverbose-asm -masm=intel yield a more detailed assembler listing. The debug -g interleaves the assembler listing with the original C code. With -fverbose-asm, gcc outputs some additional information about which variable is manipulated in a register. And -masm=intel changes the assembler mnemonics to Intel's style, instead of the AT&T style.DISK-FILLTEST
PMBW - PARALLEL MEMORY BANDWIDTH BENCHMARK / MEASUREMENT pmbw - Parallel Memory Bandwidth Benchmark / Measurement. Posted on 2013-07-08, last updated 2013-12-12 by Timo Bingmann at Permlink.. Summary. The tool pmbw is a set of assembler routines to measure the parallel memory (cache and RAM) bandwidth of modern multi-core machines. Memory bandwidth is one of the key performance factors of any computer system. TUTORIAL ON BOOST.SPIRIT AT C++ USER GROUP KARLSRUHE On September 12th, 2018, I gave another 90min talk with live-coding examples in German at the C++ User Group Karlsruhe in rooms of the Karlsruhe Institute of Technology (KIT).. This time I was asked to present a more advanced topic around C++ and libraries and I chose to present a tutorial on Boost.Spirit.. Boost.Spirit is a parser and generator template meta-programming framework and APPENDIX: __CXA_DEMANGLE DOCUMENTATION Appendix: __cxa_demangle Documentation. A NUL -terminated character string containing the name to be demangled. A region of memory, allocated with malloc, of *length bytes, into which the demangled name is stored. If output_buffer is not long enough, it is expanded using realloc. output_buffer may instead be NULL; in that case, thedemangled
NOTE ABOUT THE NEW TLX LIBRARY OF ADVANCED C++ DATA Last year on February 19th, I started a new github repository called tlx with the goal of de-duplicating code from three projects: Thrill, STXXL, and a private project. The idea came up after a STXXL code workshop in Frankfurt (fashionably called hackathons nowadays). CRYPTOTE - EASY TO USE TEXT EDITOR WITH INTEGRATEDSEE MORE ONPANTHEMA.NET
FLEX BISON C++ EXAMPLE: MAIN PAGE WEBLOG - PANTHEMA.NETTIMO BINGMANNPERMLINKSORTINGELECTRONICSLEDSFRONTPAGE Welcome to panthema.net. This website is a diverse collection of interesting ideas, thus it is panthematic.It contains free open-source software and projects (FOSS), computer science research results, blog articles and more, all created by myself, Timo Bingmann.Over the years, the amount of information, source code and other content hasgrown rather large.
THE SOUND OF SORTING Posted on 2013-05-22, last updated 2014-05-15 by Timo Bingmann at Permlink.. Sorting algorithms are an essential chapter in undergraduate computer science education. Due to their easy to explain nature and fairly straight-forward analysis, this set of algorithms offers a convenient introduction to the methods and techniques of theoretical computer science and algorithm analysis. CODING TRICKS 101: HOW TO SAVE THE ASSEMBLER CODE The non-assembler options -g -fverbose-asm -masm=intel yield a more detailed assembler listing. The debug -g interleaves the assembler listing with the original C code. With -fverbose-asm, gcc outputs some additional information about which variable is manipulated in a register. And -masm=intel changes the assembler mnemonics to Intel's style, instead of the AT&T style.DISK-FILLTEST
PMBW - PARALLEL MEMORY BANDWIDTH BENCHMARK / MEASUREMENT pmbw - Parallel Memory Bandwidth Benchmark / Measurement. Posted on 2013-07-08, last updated 2013-12-12 by Timo Bingmann at Permlink.. Summary. The tool pmbw is a set of assembler routines to measure the parallel memory (cache and RAM) bandwidth of modern multi-core machines. Memory bandwidth is one of the key performance factors of any computer system. APPENDIX: __CXA_DEMANGLE DOCUMENTATION Appendix: __cxa_demangle Documentation. A NUL -terminated character string containing the name to be demangled. A region of memory, allocated with malloc, of *length bytes, into which the demangled name is stored. If output_buffer is not long enough, it is expanded using realloc. output_buffer may instead be NULL; in that case, thedemangled
NOTE ABOUT THE NEW TLX LIBRARY OF ADVANCED C++ DATA Last year on February 19th, I started a new github repository called tlx with the goal of de-duplicating code from three projects: Thrill, STXXL, and a private project. The idea came up after a STXXL code workshop in Frankfurt (fashionably called hackathons nowadays). CRYPTOTE - EASY TO USE TEXT EDITOR WITH INTEGRATEDSEE MORE ONPANTHEMA.NET
FINDING ROOTS OF POLYNOMIALS BY CLIPPING Abstract (Translation of Kurzfassung) Fast computation of the roots of a polynomial is the basis for many more complex applications. Classical algorithms for this problem are for example bisection and the Newton-Raphson method, where the latter is quadratically convergent on single roots, but only linear convergent on doubleroots.
FLEX BISON C++ EXAMPLE: MAIN PAGE CODING TRICKS 101: HOW TO SAVE THE ASSEMBLER CODE The non-assembler options -g -fverbose-asm -masm=intel yield a more detailed assembler listing. The debug -g interleaves the assembler listing with the original C code. With -fverbose-asm, gcc outputs some additional information about which variable is manipulated in a register. And -masm=intel changes the assembler mnemonics to Intel's style, instead of the AT&T style. FLEX BISON C++ TEMPLATE/EXAMPLE Posted on 2007-08-20, last updated 2009-09-05 by Timo Bingmann at Permlink.. Summary. This code template can be used to integrate a Flex scanner and Bison parser pair into a modern C++ program.These two universal tools are very difficult to incorporate into a good C++ design.The template utilizes both Flex and Bison in C++ mode and their output are encapsulate into classes. FLEX BISON C++ EXAMPLE: MAIN PAGE Summary. This example shows how to use both Flex and Bison in C++ mode. This way both lexer and parser code and data is encapsulated into classes. Thus the lexer and parser are fully re-entrant, because all state variables are contained in the class objects. Furthermore multiple different lexer-parser pairs can easily be linked into onebinary
FINDING ROOTS OF POLYNOMIALS BY CLIPPING Abstract (Translation of Kurzfassung) Fast computation of the roots of a polynomial is the basis for many more complex applications. Classical algorithms for this problem are for example bisection and the Newton-Raphson method, where the latter is quadratically convergent on single roots, but only linear convergent on doubleroots.
/2013/DISK-FILLTEST/DISK-FILLTEST-0.8.2/DISK-FILLTEST.C Copyright 2005-2020 Timo Bingmann - ImpressumTimo Bingmann - ImpressumC++ CODE SNIPPET
The zlib library can be found on virtually every computer. It is THE general-purpose lossless patent-free compression library. This small C++ code snippet features a pair of functions which use this ubiquitous library to compress ordinary STL strings. There are many uses for this code snippet, like compressing string data stored in adatabase
BOOST.SPIRIT TUTORIAL Boost Spirit Parser for Stock Market Data Example: 2018-09-10-13-36;12014.57;12016.30;12014.57;12016.23;1929;0; std::istringstream in(web.data()); std::string line; FLEX BISON C++ EXAMPLE: EXAMPLEFLEXLEXER CLASS REFERENCE Pushes the new state onto the stack. The new state becomes the current state. This function will allocate the stack if necessary. Parameters:C++ CODE SNIPPET
To demonstrate the stack trace function I wrote the following small test source code. It calls print_stacktrace() four times from different functions, that were specifically crafted to produce complex names. I left it uncommented, because the functions have no realpurpose.
FLEX BISON C++ EXAMPLE: EXAMPLE::PARSER::TOKEN STRUCT The documentation for this struct was generated from the followingfile: src/parser.h
WEBLOG - PANTHEMA.NETTIMO BINGMANNPERMLINKSORTINGELECTRONICSLEDSFRONTPAGE Welcome to panthema.net. This website is a diverse collection of interesting ideas, thus it is panthematic.It contains free open-source software and projects (FOSS), computer science research results, blog articles and more, all created by myself, Timo Bingmann.Over the years, the amount of information, source code and other content hasgrown rather large.
THE SOUND OF SORTING Posted on 2013-05-22, last updated 2014-05-15 by Timo Bingmann at Permlink.. Sorting algorithms are an essential chapter in undergraduate computer science education. Due to their easy to explain nature and fairly straight-forward analysis, this set of algorithms offers a convenient introduction to the methods and techniques of theoretical computer science and algorithm analysis. CODING TRICKS 101: HOW TO SAVE THE ASSEMBLER CODE The non-assembler options -g -fverbose-asm -masm=intel yield a more detailed assembler listing. The debug -g interleaves the assembler listing with the original C code. With -fverbose-asm, gcc outputs some additional information about which variable is manipulated in a register. And -masm=intel changes the assembler mnemonics to Intel's style, instead of the AT&T style.DISK-FILLTEST
PMBW - PARALLEL MEMORY BANDWIDTH BENCHMARK / MEASUREMENT pmbw - Parallel Memory Bandwidth Benchmark / Measurement. Posted on 2013-07-08, last updated 2013-12-12 by Timo Bingmann at Permlink.. Summary. The tool pmbw is a set of assembler routines to measure the parallel memory (cache and RAM) bandwidth of modern multi-core machines. Memory bandwidth is one of the key performance factors of any computer system. TUTORIAL ON BOOST.SPIRIT AT C++ USER GROUP KARLSRUHE On September 12th, 2018, I gave another 90min talk with live-coding examples in German at the C++ User Group Karlsruhe in rooms of the Karlsruhe Institute of Technology (KIT).. This time I was asked to present a more advanced topic around C++ and libraries and I chose to present a tutorial on Boost.Spirit.. Boost.Spirit is a parser and generator template meta-programming framework and APPENDIX: __CXA_DEMANGLE DOCUMENTATION Appendix: __cxa_demangle Documentation. A NUL -terminated character string containing the name to be demangled. A region of memory, allocated with malloc, of *length bytes, into which the demangled name is stored. If output_buffer is not long enough, it is expanded using realloc. output_buffer may instead be NULL; in that case, thedemangled
NOTE ABOUT THE NEW TLX LIBRARY OF ADVANCED C++ DATA Last year on February 19th, I started a new github repository called tlx with the goal of de-duplicating code from three projects: Thrill, STXXL, and a private project. The idea came up after a STXXL code workshop in Frankfurt (fashionably called hackathons nowadays). CRYPTOTE - EASY TO USE TEXT EDITOR WITH INTEGRATEDSEE MORE ONPANTHEMA.NET
FLEX BISON C++ EXAMPLE: MAIN PAGE WEBLOG - PANTHEMA.NETTIMO BINGMANNPERMLINKSORTINGELECTRONICSLEDSFRONTPAGE Welcome to panthema.net. This website is a diverse collection of interesting ideas, thus it is panthematic.It contains free open-source software and projects (FOSS), computer science research results, blog articles and more, all created by myself, Timo Bingmann.Over the years, the amount of information, source code and other content hasgrown rather large.
THE SOUND OF SORTING Posted on 2013-05-22, last updated 2014-05-15 by Timo Bingmann at Permlink.. Sorting algorithms are an essential chapter in undergraduate computer science education. Due to their easy to explain nature and fairly straight-forward analysis, this set of algorithms offers a convenient introduction to the methods and techniques of theoretical computer science and algorithm analysis. CODING TRICKS 101: HOW TO SAVE THE ASSEMBLER CODE The non-assembler options -g -fverbose-asm -masm=intel yield a more detailed assembler listing. The debug -g interleaves the assembler listing with the original C code. With -fverbose-asm, gcc outputs some additional information about which variable is manipulated in a register. And -masm=intel changes the assembler mnemonics to Intel's style, instead of the AT&T style.DISK-FILLTEST
PMBW - PARALLEL MEMORY BANDWIDTH BENCHMARK / MEASUREMENT pmbw - Parallel Memory Bandwidth Benchmark / Measurement. Posted on 2013-07-08, last updated 2013-12-12 by Timo Bingmann at Permlink.. Summary. The tool pmbw is a set of assembler routines to measure the parallel memory (cache and RAM) bandwidth of modern multi-core machines. Memory bandwidth is one of the key performance factors of any computer system. TUTORIAL ON BOOST.SPIRIT AT C++ USER GROUP KARLSRUHE On September 12th, 2018, I gave another 90min talk with live-coding examples in German at the C++ User Group Karlsruhe in rooms of the Karlsruhe Institute of Technology (KIT).. This time I was asked to present a more advanced topic around C++ and libraries and I chose to present a tutorial on Boost.Spirit.. Boost.Spirit is a parser and generator template meta-programming framework and APPENDIX: __CXA_DEMANGLE DOCUMENTATION Appendix: __cxa_demangle Documentation. A NUL -terminated character string containing the name to be demangled. A region of memory, allocated with malloc, of *length bytes, into which the demangled name is stored. If output_buffer is not long enough, it is expanded using realloc. output_buffer may instead be NULL; in that case, thedemangled
NOTE ABOUT THE NEW TLX LIBRARY OF ADVANCED C++ DATA Last year on February 19th, I started a new github repository called tlx with the goal of de-duplicating code from three projects: Thrill, STXXL, and a private project. The idea came up after a STXXL code workshop in Frankfurt (fashionably called hackathons nowadays). CRYPTOTE - EASY TO USE TEXT EDITOR WITH INTEGRATEDSEE MORE ONPANTHEMA.NET
FLEX BISON C++ EXAMPLE: MAIN PAGE CODING TRICKS 101: HOW TO SAVE THE ASSEMBLER CODE The non-assembler options -g -fverbose-asm -masm=intel yield a more detailed assembler listing. The debug -g interleaves the assembler listing with the original C code. With -fverbose-asm, gcc outputs some additional information about which variable is manipulated in a register. And -masm=intel changes the assembler mnemonics to Intel's style, instead of the AT&T style. FLEX BISON C++ TEMPLATE/EXAMPLE Posted on 2007-08-20, last updated 2009-09-05 by Timo Bingmann at Permlink.. Summary. This code template can be used to integrate a Flex scanner and Bison parser pair into a modern C++ program.These two universal tools are very difficult to incorporate into a good C++ design.The template utilizes both Flex and Bison in C++ mode and their output are encapsulate into classes. FLEX BISON C++ EXAMPLE: MAIN PAGE Summary. This example shows how to use both Flex and Bison in C++ mode. This way both lexer and parser code and data is encapsulated into classes. Thus the lexer and parser are fully re-entrant, because all state variables are contained in the class objects. Furthermore multiple different lexer-parser pairs can easily be linked into onebinary
FINDING ROOTS OF POLYNOMIALS BY CLIPPING Abstract (Translation of Kurzfassung) Fast computation of the roots of a polynomial is the basis for many more complex applications. Classical algorithms for this problem are for example bisection and the Newton-Raphson method, where the latter is quadratically convergent on single roots, but only linear convergent on doubleroots.
/2013/DISK-FILLTEST/DISK-FILLTEST-0.8.2/DISK-FILLTEST.C Copyright 2005-2020 Timo Bingmann - ImpressumTimo Bingmann - ImpressumC++ CODE SNIPPET
The zlib library can be found on virtually every computer. It is THE general-purpose lossless patent-free compression library. This small C++ code snippet features a pair of functions which use this ubiquitous library to compress ordinary STL strings. There are many uses for this code snippet, like compressing string data stored in adatabase
BOOST.SPIRIT TUTORIAL Boost Spirit Parser for Stock Market Data Example: 2018-09-10-13-36;12014.57;12016.30;12014.57;12016.23;1929;0; std::istringstream in(web.data()); std::string line; FLEX BISON C++ EXAMPLE: EXAMPLEFLEXLEXER CLASS REFERENCE Pushes the new state onto the stack. The new state becomes the current state. This function will allocate the stack if necessary. Parameters:C++ CODE SNIPPET
To demonstrate the stack trace function I wrote the following small test source code. It calls print_stacktrace() four times from different functions, that were specifically crafted to produce complex names. I left it uncommented, because the functions have no realpurpose.
FLEX BISON C++ EXAMPLE: EXAMPLE::PARSER::TOKEN STRUCT The documentation for this struct was generated from the followingfile: src/parser.h
WEBLOG - PANTHEMA.NETTIMO BINGMANNPERMLINKSORTINGELECTRONICSLEDSFRONTPAGE Welcome to panthema.net. This website is a diverse collection of interesting ideas, thus it is panthematic.It contains free open-source software and projects (FOSS), computer science research results, blog articles and more, all created by myself, Timo Bingmann.Over the years, the amount of information, source code and other content hasgrown rather large.
THE SOUND OF SORTING Posted on 2013-05-22, last updated 2014-05-15 by Timo Bingmann at Permlink.. Sorting algorithms are an essential chapter in undergraduate computer science education. Due to their easy to explain nature and fairly straight-forward analysis, this set of algorithms offers a convenient introduction to the methods and techniques of theoretical computer science and algorithm analysis.DISK-FILLTEST
CODING TRICKS 101: HOW TO SAVE THE ASSEMBLER CODE The non-assembler options -g -fverbose-asm -masm=intel yield a more detailed assembler listing. The debug -g interleaves the assembler listing with the original C code. With -fverbose-asm, gcc outputs some additional information about which variable is manipulated in a register. And -masm=intel changes the assembler mnemonics to Intel's style, instead of the AT&T style. PMBW - PARALLEL MEMORY BANDWIDTH RESULTS - PANTHEMA.NET pmbw - Parallel Memory Bandwidth Results. This page collects results of the pmbw benchmark tool from various systems. The following table shows an overview of all results, including links to the detailed test page and a summary of the key bandwidth values. PMBW - PARALLEL MEMORY BANDWIDTH BENCHMARK / MEASUREMENTINTEL MEMORY BANDWIDTHMEASURE MEMORY BANDWIDTHMEMORY BANDWIDTH TESTBANDWIDTH TOOLS FOR WINDOWSHIGH BANDWIDTH MEMORYHIGH BANDWIDTH MEMORY INTERFACE pmbw - Parallel Memory Bandwidth Benchmark / Measurement. Posted on 2013-07-08, last updated 2013-12-12 by Timo Bingmann at Permlink.. Summary. The tool pmbw is a set of assembler routines to measure the parallel memory (cache and RAM) bandwidth of modern multi-core machines. Memory bandwidth is one of the key performance factors of any computer system. APPENDIX: __CXA_DEMANGLE DOCUMENTATION Appendix: __cxa_demangle Documentation. A NUL -terminated character string containing the name to be demangled. A region of memory, allocated with malloc, of *length bytes, into which the demangled name is stored. If output_buffer is not long enough, it is expanded using realloc. output_buffer may instead be NULL; in that case, thedemangled
CRYPTOTE - EASY TO USE TEXT EDITOR WITH INTEGRATEDSEE MORE ONPANTHEMA.NET
NOTE ABOUT THE NEW TLX LIBRARY OF ADVANCED C++ DATA Last year on February 19th, I started a new github repository called tlx with the goal of de-duplicating code from three projects: Thrill, STXXL, and a private project. The idea came up after a STXXL code workshop in Frankfurt (fashionably called hackathons nowadays).C++ CODE SNIPPET
The zlib library can be found on virtually every computer. It is THE general-purpose lossless patent-free compression library. This small C++ code snippet features a pair of functions which use this ubiquitous library to compress ordinary STL strings. There are many uses for this code snippet, like compressing string data stored in adatabase
WEBLOG - PANTHEMA.NETTIMO BINGMANNPERMLINKSORTINGELECTRONICSLEDSFRONTPAGE Welcome to panthema.net. This website is a diverse collection of interesting ideas, thus it is panthematic.It contains free open-source software and projects (FOSS), computer science research results, blog articles and more, all created by myself, Timo Bingmann.Over the years, the amount of information, source code and other content hasgrown rather large.
THE SOUND OF SORTING Posted on 2013-05-22, last updated 2014-05-15 by Timo Bingmann at Permlink.. Sorting algorithms are an essential chapter in undergraduate computer science education. Due to their easy to explain nature and fairly straight-forward analysis, this set of algorithms offers a convenient introduction to the methods and techniques of theoretical computer science and algorithm analysis.DISK-FILLTEST
CODING TRICKS 101: HOW TO SAVE THE ASSEMBLER CODE The non-assembler options -g -fverbose-asm -masm=intel yield a more detailed assembler listing. The debug -g interleaves the assembler listing with the original C code. With -fverbose-asm, gcc outputs some additional information about which variable is manipulated in a register. And -masm=intel changes the assembler mnemonics to Intel's style, instead of the AT&T style. PMBW - PARALLEL MEMORY BANDWIDTH RESULTS - PANTHEMA.NET pmbw - Parallel Memory Bandwidth Results. This page collects results of the pmbw benchmark tool from various systems. The following table shows an overview of all results, including links to the detailed test page and a summary of the key bandwidth values. PMBW - PARALLEL MEMORY BANDWIDTH BENCHMARK / MEASUREMENTINTEL MEMORY BANDWIDTHMEASURE MEMORY BANDWIDTHMEMORY BANDWIDTH TESTBANDWIDTH TOOLS FOR WINDOWSHIGH BANDWIDTH MEMORYHIGH BANDWIDTH MEMORY INTERFACE pmbw - Parallel Memory Bandwidth Benchmark / Measurement. Posted on 2013-07-08, last updated 2013-12-12 by Timo Bingmann at Permlink.. Summary. The tool pmbw is a set of assembler routines to measure the parallel memory (cache and RAM) bandwidth of modern multi-core machines. Memory bandwidth is one of the key performance factors of any computer system. APPENDIX: __CXA_DEMANGLE DOCUMENTATION Appendix: __cxa_demangle Documentation. A NUL -terminated character string containing the name to be demangled. A region of memory, allocated with malloc, of *length bytes, into which the demangled name is stored. If output_buffer is not long enough, it is expanded using realloc. output_buffer may instead be NULL; in that case, thedemangled
CRYPTOTE - EASY TO USE TEXT EDITOR WITH INTEGRATEDSEE MORE ONPANTHEMA.NET
NOTE ABOUT THE NEW TLX LIBRARY OF ADVANCED C++ DATA Last year on February 19th, I started a new github repository called tlx with the goal of de-duplicating code from three projects: Thrill, STXXL, and a private project. The idea came up after a STXXL code workshop in Frankfurt (fashionably called hackathons nowadays).C++ CODE SNIPPET
The zlib library can be found on virtually every computer. It is THE general-purpose lossless patent-free compression library. This small C++ code snippet features a pair of functions which use this ubiquitous library to compress ordinary STL strings. There are many uses for this code snippet, like compressing string data stored in adatabase
WEBLOG ARTICLES 2020 It is a C++ framework consisting of a set of basic scalable algorithmic primitives like mapping, reducing, sorting, merging, joining, and additional MPI-like collectives. This set of primitives can be combined into larger more complex algorithms, such as WordCount, PageRank, and suffix sorting. Such compounded algorithms can then be run on veryABOUT MYSELF
Academic Education and Research. Timo Bingmann is currently a PostDoc in Prof. Peter Sanders' Group at the Institute of Theoretical Informatics, Algorithmics, which is part of the Karlsruhe Institute of Technology.He received a Dr. rer. nat. from KIT in 2018 for his SEARCH - PANTHEMA.NET Search panthema.net (using Google): Copyright 2005-2020 Timo Bingmann - ImpressumTimo Bingmann - Impressum TUTORIAL ON BOOST.SPIRIT AT C++ USER GROUP KARLSRUHE On September 12th, 2018, I gave another 90min talk with live-coding examples in German at the C++ User Group Karlsruhe in rooms of the Karlsruhe Institute of Technology (KIT).. This time I was asked to present a more advanced topic around C++ and libraries and I chose to present a tutorial on Boost.Spirit.. Boost.Spirit is a parser and generator template meta-programming framework andMALLOC_COUNT
Posted on 2013-03-16, last updated 2014-09-19 by Timo Bingmann at Permlink.. malloc_count provides a set of source code tools to measure the amount of allocated memory of a program at run-time.The code library provides facilities to. measure the current and peak heap memory allocation, and; write a memory profile for plotting, see the figure on the right. FLEX BISON C++ EXAMPLE: MAIN PAGE Summary. This example shows how to use both Flex and Bison in C++ mode. This way both lexer and parser code and data is encapsulated into classes. Thus the lexer and parser are fully re-entrant, because all state variables are contained in the class objects. Furthermore multiple different lexer-parser pairs can easily be linked into onebinary
/2013/DISK-FILLTEST/DISK-FILLTEST-0.8.2/DISK-FILLTEST.C Copyright 2005-2020 Timo Bingmann - ImpressumTimo Bingmann - ImpressumC++ CODE SNIPPET
The zlib library can be found on virtually every computer. It is THE general-purpose lossless patent-free compression library. This small C++ code snippet features a pair of functions which use this ubiquitous library to compress ordinary STL strings. There are many uses for this code snippet, like compressing string data stored in adatabase
C++ CODE SNIPPET
To demonstrate the stack trace function I wrote the following small test source code. It calls print_stacktrace() four times from different functions, that were specifically crafted to produce complex names. I left it uncommented, because the functions have no realpurpose.
FLEX BISON C++ EXAMPLE: SRC/FLEXLEXER.H SOURCE FILE Generated on Thu Oct 23 11:13:54 2008 for Flex Bison C++ Example by1.5.6 1.5.6
* __ Weblog
* 2019
* 2018
* 2017
* 2016
* 2015
* 2014
* 2013
* 2012
* 2011
* 2010
* 2009
* 2008
* 2007
* 2006
* 2005
* RSS Feed
* XML Atom
* Search
* __ Tags
algebra c++ code-examplecode-snippet
coding tricks compsci compsci study thesis crypto-speedtest cryptography cryptote dissertationelectronics
flex-bison-cpp-example frontpagefun graphviz
hartmetall helppc
hifi selbstbau latexLEDs librivox
linux market
massive-sorting maths music netfundamentalsns-3
parallel-string-sorting parsingqtsqlview research
sdios06 sdlfractal
sorting sound of sortingstringology
stx-btree stxxl talkthrill tutorium
university utilitiesvncrec webdesign
* __ Projects
* CryptoTE
* digup
* disk-filltest
* eSAIS-LCP
* Flex Bison C++ Example* malloc_count
* On Bispanning Graphs * Parallel Memory Bandwidth * Parallel String Sorting* SqlPlotTools
* The Sound of Sorting* STX B+ Tree
* STX Constant BTreeDB* STX ExecPipe
* STX Expression Parser* STXXL 1.4
* Thrill - Big Data Framework* VNCrec RGB 0.4
* Search
* __ Publications
* __ About
* Timo Bingmann
* Impressum
* __ Subscribe
panthema (page 1 of 1 2 34 5 6
7 8 9 10
)
WELCOME TO PANTHEMA.NET This website is a diverse collection of INTERESTING IDEAS, thus it is PANTHEMATIC. It contains free open-source software and projects (FOSS), computer science research results, blog articles and more, all created by myself, Timo Bingmann . Over the years, the amount of information, source code and other content has grown rather large. All entries are ordered chronologically in the weblog, with some special projects highlighted in the following summary: OPEN-SOURCE PROJECTS since 2015-08-22 Thrill (in development) A C++ framework for distributed Big Data computations with emphasis on high performance and a convenient interface like Apache Spark orFlink.
since 2018-05-28 TLX Collection of Sophisticated C++ Data Structures, Algorithms, and Miscellaneous Helpers 2019-08-01SqlPlotTools Automatically import key=value experimental RESULTS into SQL tables and generate plots from them.2014-10-29STXXL 1.4
Library of external memory algorithms, including external block paging and efficient external sorting 2014-09-19malloc_count 0.7.1 Simple tool for run-time memory usage analysis and profiling underLinux
2014-05-15The Sound of Sorting 0.6.5 Viral "audibilization" and visualization of sorting algorithms 2013-12-12pmbw 0.6.2 Benchmark tool for parallel memory bandwidth / measurement under Linux 2013-05-07disk-filltest 0.7.1 Tool to detect bad disks by filling with random data 2013-05-05STX B+ Tree 0.9 Main memory B+ tree implementation with STL compatible interfaces 2011-01-30digup 0.6.40 Console tools to verify file integrity by updating MD5 and SHA digestfiles
2011-01-30CryptoTE 0.5.390 Text editor with transparent strong encryption, useful for passwordlists and more.
2009-09-05Flex Bison C++ Example 0.1.4 Example of using GNU flex and bison in a C++ program. COMPUTER SCIENCE RESEARCH 2015-04-03External Memory Algorithms Additionally to maintaining STXXL, we also developed a bulk-parallel priority queue for EM. 2014-03-09Parallel String Sorting Experimental implementations of many string sorting algorithms, including Parallel Super Scalar String Sample Sort (pS5) and Parallel Multiway LCP-Mergesort 2012-11-19External Memory Suffix Sorting Experimental implementation of eSAIS and DC3, two suffix and LCP array construction algorithms for external memory, using STXXL. MISCELLANEOUS WEBLOG POSTS 2019-08-02 BlinkenSort with Sound - The Sound of LED Sorting Algorithms with Raspberry Pi 3 and APA102 or SK9822 LEDs 2019-08-01 BlinkenSort - Sorting Algorithms on LEDs with ESP8266 andSK6812 or WS2812B
2019-06-19 Uniserv Research-Prize "Algorithms for Efficient Data-Processing" for my Dissertation 2018-07-03 Dissertation "Scalable String and Suffix Sorting: Algorithms, Techniques, and Tools" 2016-01-14 "On the Structure of the Graph of Unique Symmetric Base Exchanges of Bispanning Graphs" - Diploma Thesis in Mathematics 2014-10-26 1.000.000 Views of Sound of Sorting YouTube Video 2014-06-22 Recording of a Talk "STXXL 1.4.0 and Beyond" 2013-10-24 Sound of Sorting: Viral Video on KIT Informatik Webpage 2013-05-06 STX B+ Tree Speed Test Measurements on Raspberry Pi(Model B)
2013-05-05 STX B+ Tree Measuring Memory Usage with malloc_count 2013-01-24 Coding Tricks 101: How to Save the Assembler CodeGenerated by GCC
2008-09-01 C++ Code Snippet - Print Stack Backtrace Programmatically with Demangled Function Names 2007-03-28 C++ Code Snippet - Compressing STL Strings with zlibWEBLOG
BLINKENSORT WITH SOUND - THE SOUND OF LED SORTING ALGORITHMS WITH RASPBERRY PI 3 AND APA102 OR SK9822 LEDS Posted on 2019-08-02 19:00 by Timo Bingmannat Permlink
with 0 Comments
.
Tags: sorting electronics LEDs sound of sortingfrontpage
Once BLINKENSORT successfully showed fascinatingly complex sorting algorithms on an LED strip using an ESP8266 (see other article),
I naturally ventured to ADD THE SOUND OUTPUT from the SOUND OF SORTING program. This turned out much harder than initially thought, because the sound generation software required more processing power than available in the cheap standard microcontrollers. After much trail and error, I found out that a sufficiently new RASPBERRY PI (I happened to have a Pi 3 model B) has the rare combination of ENOUGH COMPUTE POWER, can DRIVE AN LED STRIP directly via SPI, and has an AUDIO LINE-OUT. The Raspberry Pi, however, cannot drive the same type of LED strip reliably as the ESP8266 can, because the Raspberry Pi runs a time-shared Linux system instead of a real-time program. But it can drive the more expensive APA102 or SK9822 LEDs which have a separate clock line. These are 4-pin LED strips with clock and data, which can easily be attached to the Pi's SPI output pins. Furthermore, the APA102 LEDS can be driven at a MUCH HIGHER REFRESH RATE than the WS2812B and SK6812, due to the extra clock signal. This ultimately makes the sorting animations EVEN SMOOTHER than with the ESP8266 (where the frame rate is already unnoticeable). I could not find any off-the-shelf library to drive the APA102 with a C++ program on the Pi, but it was trivial to write a frame buffer class and access the /dev/spi0.0 devices directly. Then there was the question of adding a display. And after more experimentation, I found the MAX7219 DOT LED MATRIX MODULES work well. These can also be driven by SPI from the Pi, which actually has two SPI outputs on the models with 40 pins. And as a bonus these dot LED matrix models can pull off an amazing frame rate. That means that besides showing the algorithm name, the super-fast refresh rate enables displaying of (nearly) EVERY COMPARISON COUNTER INCREMENT, despite the human viewer only being able to see around 25 changes per second. Simply adding a HDMI display to the Pi would have also worked, but the LED matrix is cooler and has a retro feeling to it. As you can see in the following YouTube video, each algorithm does something quite different which makes this a VERY INTERESTING ART INSTALLATION WITH DEEP CONNECTIONS TO INFORMATICS. BlinkenSort currently contains the following EIGHTEEN SORTING ALGORITHMS (listed in the same order as in the video): MergeSort, Insertion Sort, QuickSort (LR) Hoare, QuickSort (LL) Lomoto, QuickSort Dual Pivot, ShellSort, HeapSort, CycleSort, RadixSort-MSD (High First), RadixSort-LSD (Low First), std::sort, std::stable_sort, WikiSort, TimSort, Selection Sort, Bubble Sort, Cocktail-Shaker Sort, and BozoSort. Besides sorting algorithms the collection also contains FOUR HASH TABLE IMPLEMENTATIONS: Linear Probing Hash Table, Quadratic Probing Hash Table, Cuckoo-Hashing with two places, and Cuckoo-Hashingwith three places.
The video above (https://youtu.be/kAjQ8shElP8) shows the LED strip with sound in action and I added a voice-over commentary about the algorithms. There is also a second YouTube video available , without my commentary. All source code for the sorting algorithms and other Neopixel animations is available from Github: https://github.com/bingmann/BlinkenAlgorithms.git This blog entry continues on the next page ... BLINKENSORT - SORTING ALGORITHMS ON LEDS WITH ESP8266 AND SK6812 ORWS2812B
Posted on 2019-08-01 19:00 by Timo Bingmannat Permlink
with 2 Comments
.
Tags: sorting electronics LEDs sound of sortingfrontpage
About two years ago I first got my hands on one of the fancy ADDRESSABLE "NEOPIXEL" LED STRIPS, which can be programmed to show colorful animations. I quickly saw there was one project I just had to do with these strips: use them to DISPLAY SORTING ALGORITHMS as animations. Since my SOUND OF SORTING project already contained the source code for many algorithms, the step to using an addressable LED strip as a "display" was not a large one. The strips can be animated USING MICROCONTROLLERS such as the Arduino or Espressif ESP chips, which have way enough compute power for running sorting algorithms on a few hundred items. Since all sorting algorithms run on random input data and may make random decisions themselves, the shown animations are near INFINITELY VARYING and FASCINATINGLY COMPLEX. The outcome of my project of displaying sorting algorithms on LED strips are two pieces of art: * "BLINKENSORT", which are sorting algorithms animated on SK6812 RGBW LEDs using an ESP8266 microcontroller, is described in this article. * "BLINKENSORT WITH SOUND",
which are sorting algorithms animated using APA102 RGB LEDs and a Raspberry Pi 3 WITH REAL-TIME SOUND, is detailed in a second blogarticle
!
For both projects I created a YOUTUBE VIDEO and provide a CONSTRUCTION MANUAL on this website if you are interested in the internals or want to build something similar. This blog entry continues on the next page ... (Foto: Andreas Drollinger, KIT) UNISERV RESEARCH-PRIZE "ALGORITHMS FOR EFFICIENT DATA-PROCESSING" FORMY DISSERTATION
Posted on 2019-06-19 19:00 by Timo Bingmannat Permlink
with 1 Comments
. Tags:
dissertation universityfrontpage
Today was the CEREMONIAL GRADUATION DAY on which new bachelors, masters, and also Dr.s (PhDs in the Anglo-Saxon world) were celebrated who received their degrees from the department of informatics at the Karlsruhe Institute of Technology (KIT) within the last year. This year's graduation day coincided with the 50TH ANNIVERSARY OF THE INTRODUCTION OF COMPUTER SCIENCE as a field of study and as a diploma degree. I was among those honoured for completing the Dr. last year, (see my dissertation page ). In total 44 freshly minted Dr.s, 292 masters, and 261 bachelors where celebratedtoday.
Furthermore, I was awarded the UNISERV RESEARCH-PRIZE "ALGORITHMS FOR EFFICIENT DATA-PROCESSING" for the BEST DISSERTATION IN THE FIELD OF FAST ALGORITHMS in the academic year 2017/2018 at the KIT department of informatics by the talent committee of the department. I would like to THANK UNISERV for endowing the department and my dissertation with this prize and ESPECIALLY THE TALENT COMMITTEE FOR SELECTING MY WORK. It was a great and pleasant surprise to receive such a notification in the morning email inbox, which as usual contained many "prize and distant inheritance" emails. But on that day one of them was real, and I nearly overlooked it. My dissertation was the central purpose in my life for many years, and receiving the prize helps me feel the time was well spent and consider it as confirmation of having furthered the field of informatics a tiny bit. It is rare to receive such honours and I am truly grateful. Uniserv wrote a much longer HONORIFIC PRESS RELEASEin German.
YOUTUBE VIDEO: "ANIMATION OF THE US TREASURY YIELD CURVE WITH INVERSIONS FROM 1962-01-01 TO 2019-04-01" Posted on 2019-04-03 23:30 by Timo Bingmannat Permlink
with 0
Comments
.
Tags: market fun
Today I published the FIRST ANIMATION OF MARKET DATA by my new charting tool on Youtube. In light of recent events this was an video of inversions of the US Treasury Yield Curve. The video is created with QCustomPlot and a large Qt program to process data. The dancing green line plots the yields of all constant maturity treasury notes. The trailing blue line shows the efficient 30 day Federal Funds rate. The orange line is the broad stock market SPX index. The background of each day is painted red if an inversion of the 1y/5y, 1y/10y, or 2y/10y yields occurs. The darker the red color, the greater the inversion. Watch the yield curve and the stock market index change over the decades, notice their behaviour in times of crisis. The video ends with the current inversion around April 2019. More about the yield curve and inversions: https://en.wikipedia.org/wiki/Yield_curve#Inverted_yield_curve The Federal Funds rate data was taken from FRED (Federal Reserve Bank of St. Louis), series DFF: https://fred.stlouisfed.org/series/DFF. The US Treasury yields data was also taken from FRED, series DGS1MO, DGS3MO, DGS1, DGS2, DGS5, DGS7, DGS10, DGS20, DGS30, e.g. https://fred.stlouisfed.org/series/DGS30. Across the decades the various durations were sometimes not emitted, which is visible by points being added or removed from the green curve. SPX data was taken from Stooq.com, series ^SPX. NVME "DISK" BANDWIDTH AND LATENCY FOR BATCHED BLOCK REQUESTS Posted on 2019-03-22 16:00 by Timo Bingmannat Permlink
with 0 Comments
. Tags: c++
stxxl thrill
Last week I had the pleasure of being invited to the Dagstuhl seminar 19111 on Theoretical Models of Storage Systems . I gave a talk on the history of STXXL and Thrill , but also wanted to include some current developments. Most interesting I found is THE GAP CLOSING BETWEEN RAM AND DISK BANDWIDTH due to the (relatively) new Non-Volatile Memory Express (NVMe) storage devices. Since I am involved in many projects using external memory, I decided to perform a simple set of fundamental experiments to compare rotational disks and newer solid-state devices (SSDs). The results were interesting enough to write this blog article about. Among the tools of STXXL/FOXXLL there are two benchmarks which perform two distinct access patterns: SCAN (benchmark_disks) and RANDOM (benchmark_disks_random). * In SCAN a batch of _k_ sequential blocks of size _B_ are read orwritten in order.
* In RANDOM a batch of _k_ randomly selected blocks of size _B_ from a span of size _N_ are read or written. The Scan experiment is probably the fastest access method as it reads or writes the disk (actually: storage device) sequentially. The Random experiment is good to determine the access latency of the disk as it first has to seek to the block and then transfer the data. Notice that the Random experiment does BATCHED BLOCK ACCESSES like one would perform in a query/answering system where the next set of random blocks depends on calculations performed with the preceding blocks (like in a B-Tree). This is a different experiment than done by most "throughput" measurement tools which issue a continuous stream of random block accesses. This blog entry continues on the next page ... PRESENTATION "SCALABLE CONSTRUCTION OF TEXT INDEXES WITH THRILL" ATIEEE BIG DATA 2018
Posted on 2018-12-12 16:00 by Timo Bingmannat Permlink
with 0
Comments
.
Tags: talk thrill
Today, I gave a presentation of our paper "Scalable Construction of Text Indexes with Thrill" at the IEEE International Conference on Big Data 2018 in Seattle, WA,USA.
The slides of the presentation at the IEEE conference are availablehere:
slides-Scalable-Construction-of-Text-Indexes-with-Thrill.pdf.
The full paper is available from this webpage: paper-Scalable-Construction-of-Text-Indexes-with-Thrill.pdf or refer to the longer version in my dissertation on scalable suffix arrayconstruction.
ABSTRACT
The suffix array is the key to efficient solutions for myriads of string processing problems in different application domains, like data compression, data mining, or bioinformatics. With the rapid growth of available data, suffix array construction algorithms have to be adapted to advanced computational models such as external memory and distributed computing. In this article, we present five suffix array construction algorithms utilizing the new algorithmic big data batch processing framework Thrill, which allows scalable processing of input sizes on distributed systems in orders of magnitude that have not beenconsidered before.
PRINT QUALITY OF PRINT-ON-DEMAND BOOKS FROM AMAZON CREATESPACE/KDP, EPUBLI.DE, AND INGRAM SPARK Posted on 2018-11-05 20:00 by Timo Bingmannat Permlink
with 0 Comments
.
Tags: dissertation
Having just finished my PhD thesis in computer science (see the corresponding dissertation ), I ventured to actually print it AS A PROPER BOOK. In this article I want to share some of my experience with THREE PRINT-ON-DEMAND bookpublishers:
* epubli.de (a smaller German publisher), * Amazon CreateSpace , now called Amazon Kindle Direct Publishing (KDP) , * and IngramSpark , which is the self-publishing branch of Ingram. Disclaimer: these are my experiences, yours will probably be different. And I hope print-on-demand quality will improve further inthe future.
Below are macro photographs of the various print proof and other copies I received from the publishers. The photographs were taken with a Samsung Galaxy S9 smartphone with a (cheap) macro lens. Hence the colors and blur in the photos should be considered with caution, but the sharpness and detail level is sufficient for some discussion. TL;DR: Amazon's print proof from the USA has the nicest print and color, but they only produce paperback covers. IngramSpark's prints are second best, have a lower resolution, but they produce hardcovers and consistent quality. AMAZON PRINT PROOF FROM THE USA Uploading the PDF to Amazon CreateSpace is straight-forward due to the convenient web interface. The Amazon CreateSpace print proof was manufactured in Lexington, KY, USA, it was shipped three days after ordering, and arrived ELEVEN DAYS after ordering. For an international shipment from the USA to Germany that is a very acceptable deliverytime.
The print quality of the Amazon Print Proof was in my option THE BEST. It has the HIGHEST RESOLUTION, BRIGHT COLORS, and SOLID BLACK. The paper and entire book has the feel of high-quality color laser printer output. Sadly, they the only produce paperback softcover books and I preferred a hardcover. On the plus side, publishing via Amazon gives you a free CreateSpace-ISBN and it is immediately listed in the world-wide Amazon catalog.ORIGINAL PDF
As a comparison to the printed books, the pictures above show the same excepts rendered as a bitmap image. Note that the layout of the words in each cover image may differ, because each cover needed to by typeset individually to the individual specifications of thepublisher.
This blog entry continues on the next page ... TUTORIAL ON BOOST.SPIRIT AT C++ USER GROUP KARLSRUHE Posted on 2018-09-12 19:30 by Timo Bingmannat Permlink
with 0 Comments
. Tags: talk
c++ parsing
On September 12th, 2018, I gave another 90min talk with LIVE-CODING EXAMPLES in German at the C++ User Group Karlsruhein rooms of the
Karlsruhe Institute of Technology (KIT). This time I was asked to present a more advanced topic around C++ and libraries and I chose to present a tutorial on Boost.Spirit.
Boost.Spirit
is a
parser and generator template meta-programming framework and maybe one of the most crazy and advanced uses of C++. It enables one to write context-free grammars inline as C++ code, which are translated into recursive descent parsers and fully optimized by the compiler. This powerful framework is however not easy to get started with. I hope my tutorial helps more people to skip the steep learning curve and use Boost.Spirit for securely parsing user input and otherstructure data.
The tutorial consisted of a set of introduction slides: slides-2018-09-12-Cpp-Meetup.pdf.
Followed by a live-coding session in German which was recorded by the KIT (see below for the youtube video). The EXTENSIVE CODE EXAMPLES presented in the live coding session are available on this webpage or on github: https://github.com/bingmann/2018-cpp-spirit-parsing. The examples can be seen as instructive templates and copy & paste sources for new development. The examples are: * Learn to walk and parse simple integers and lists.
Parse 5, .
* Create a parser for a simple arithmetic grammar(and part two
).
Parse 5 + 6 * 9 + 42 and evaluate correctly. * Parse CSV data directly into a C++ struct.
Parse AAPL;APPLE;252.50; into a struct. * Create an abstract syntax tree (AST) from arithmetic(and
part two
).
Parse Y = 6 * 9 + 42 * X and evaluate with variables. * Ogle some more crazy examples, e.g. how to parse.
Example for C++ HTML Parser
This HTML snippet parser can also interpret *Markdown* style and enables additional tags to <% invoke("C++", 42) %> functions. Furthermore, a recording of the live-coding IN GERMAN is available onYoutube:
https://www.youtube.com/watch?v=gYAheppw73U DISSERTATION "SCALABLE STRING AND SUFFIX SORTING: ALGORITHMS, TECHNIQUES, AND TOOLS" Posted on 2018-07-03 18:00 by Timo Bingmannat Permlink
with 1 Comments
. Tags: talk
university dissertationfrontpage
The road to a Dr. title (PhD in the Anglo-Saxon world) is often long, rough, and twisted. First you have to do original research, produce novel results, publish articles, and then write and ultimately publish a dissertation. Defending your research in the dissertation in front of a panel of professors is one of the final milestones on thatjourney.
On July 3rd, I successfully defended my dissertation at the Karlsruhe Institute of Technology and the dissertation text has now been published as a book. PUBLISHED DISSERTATION My final dissertation PDF is available here: dissertation-Bingmann-Scalable-String-and-Suffix-Sorting.pdf.
It has also been published at the KIT library, on
arXiv:1808.00963 , and finally as a print-on-demand paperbackfrom Amazon.
The published book cover's background shows a list of most common words in the Wikipedia. The words are sorted and their distinguishing prefix is marked in blue. The cover is available as a double-page PDF: dissertation-cover.pdf, and as front
and back separately: dissertation-cover-front.pdfand
dissertation-cover-back.pdf.
The LaTeX source code for my dissertation is available for download: dissertation-source.zip(791 KiB).
The complete text is in one .tex file, all figures (except the creative commons logo) are generated from the LaTeX code. DISSERTATION DEFENSE PRESENTATION The slides of my presentation during the defense are available for download here: dissertation-defense-slides.pdf.
The presentation was only part of the whole defense. My actual slide set also had almost 200 more backup slides, which however were collected from all the other talks already available on this homepage. These backup slides helped greatly in the examination question afterthe presentation.
This blog entry continues on the next page ... NOTE ABOUT THE NEW TLX LIBRARY OF ADVANCED C++ DATA STRUCTURES ANDALGORITHMS
Posted on 2018-05-28 18:20 by Timo Bingmannat Permlink
with 0 Comments
. Tags: c++
Last year on February 19th, I started a new github repository called tlx with the GOAL OF DE-DUPLICATING CODE from three projects: Thrill, STXXL, and a private project. The idea came up after a STXXL code workshop in Frankfurt (fashionably called hackathons nowadays). LINK TO LIBRARY: HTTP://GITHUB.COM/TLX/TLX AND DOXYGEN DOCUMENTATION The first main common pieces of code were: * the fast loser tree implementations from MCSTL by Johannes Singler necessary for efficient multiway merging, * my die() macros for testing and run-time assertions, * a common intrusive reference counter called counting_ptr, and * simple but vital std::string manipulation functions missing fromthe STL.
The initial reason for tlx to come about was to CONSOLIDATE ALL THE BUG FIXES to the loser tree implementations that I had scattered across the three projects. Efficient multiway merging is such a fundamental task and there was no universally available C++ library that implements the tournament tree well. A long search for an appropriate vacant user account with three letters on github lead to "tlx". This is definitely a good C++ namespace name, but to this day, it is unclear what the letters stand for. Template Libraries for CXX? The missing Library for CXX? Template Library and more eXtensions. Have your pick, someday someone will find a good official expansion. Since its inception, tlx has grown a lot. Its goal is to CONSOLIDATE ALGORITHMS AND DATA STRUCTURES FROM MULTIPLE PROJECTS. In a sense tlx maybe aims to be the Boost for advanced algorithms. The goals and constraints of tlx are: * To have a library of WELL IMPLEMENTED AND TESTED ADVANCED ALGORITHMS and things missing from the C++ STL. * Target high modularity with as little dependencies between modulesas possible.
* Zero external dependencies: no additional libraries are required. * Only have compile time configuration (no platform dependentchecks).
* Compile on all platforms with C++ -- smartphones, supercomputers, windows, maybe even embedded microcontrollers. * Attempt to never break existing interfaces. * Warning and bug-freeness on all compilers. * Keep overhead down -- small overall size such that is can be included without bloating applications. * Collect code only under the Boost license, which one of the most liberal licenses and can be used any project. Currently, tlx contains * The fast TOURNAMENT (LOSER) TREES from MCSTL by Johannes Singler,with many fixes.
* A fast INTRUSIVE REFERENCE COUNTER called CountingPtr, which has considerably less overhead than std::shared_ptr. * Efficient and fast multiway merging algorithms from Johannes Singler, which were previously included with gcc. The tlx version has many fixes and is available for clang and MSVC++. * Many STRING MANIPULATION algorithms for std::string. * An improved version of my STX-BTREE implementation, which is basically always a better alternative to std::map (but not std::unordered_map). * A copy of siphash for string hashing. * Efficient sequential STRING SORTING implementation such as radix sort and multikey quicksort (described in length in my PhD thesis). And much more, which one can find on the front page of the DoxygenDocumentation
Show Page: 1 2 3 45 6 7
8 9 10 Next >
Copyright 2005-2019 Timo Bingmann - ImpressumDetails
Copyright © 2024 ArchiveBay.com. All rights reserved. Terms of Use | Privacy Policy | DMCA | 2021 | Feedback | Advertising | RSS 2.0