pzemtsov.github.io
Open in
urlscan Pro
2606:50c0:8002::153
Public Scan
Submitted URL: http://pzemtsov.github.io/
Effective URL: https://pzemtsov.github.io/
Submission: On November 02 via api from US — Scanned from DE
Effective URL: https://pzemtsov.github.io/
Submission: On November 02 via api from US — Scanned from DE
Form analysis
0 forms found in the DOMText Content
PAVEL ZEMTSOV EXPERIMENTS IN PROGRAM OPTIMISATION * All articles * Stories * Tags De-multiplexing of E1 streams * 15 Apr 2014 » De-multiplexing of E1 streams in Java * 02 May 2014 » De-multiplexing of E1 stream: converting to C * 12 May 2014 » The mystery of an unstable performance * 15 May 2014 » How to make C run as fast as Java * 18 May 2014 » Size does matter * 04 Jun 2014 » Fast E1 de-multiplexing in C using SSE/AVX * 21 Sep 2014 » A bug story: testing your test code * 01 Oct 2014 » How to transpose a 16×16 byte matrix using SSE * 21 Oct 2014 » Bug story 2: Unrolling the 16×16 matrix transposition, or be careful with macros Performance of various callback mechanisms * 28 Oct 2014 » Macros, call by name, lambda and Jensen's device * 14 Nov 2014 » Lambdas and other callbacks in Java How cache affects performance * 24 Nov 2014 » How cache affects demultiplexing of E1 * 24 Dec 2014 » More experiments with cache Effect of stream buffering * 19 Jan 2015 » On the benefits of stream buffering in Java * 01 Feb 2015 » Standard input, buffering and affinity mask Conway's Game of Life * 24 Apr 2015 » Game of Life, hash tables and hash codes * 10 Sep 2015 » Hash functions: disassembling and measuring performance * 17 Sep 2015 » Optimising division-based hash functions * 12 Oct 2015 » The fun and the cost of refactoring * 20 Oct 2015 » More optimisations of division-based hash: Karatsuba's method * 28 Oct 2015 » Don't trust a micro-benchmark * 21 Nov 2015 » CRC32: intrinsic, Java or C with JNI? * 04 Dec 2015 » Optimising the hash-based Life * 14 Dec 2015 » Choosing the hash map's capacity * 31 Jan 2016 » Home-made hash tables in Java * 21 Mar 2016 » Home-made hash tables in C++: a race against Java Numbers from scratch * 22 Dec 2015 » Implementing Peano arithmetic * 10 Jan 2016 » Home-made binary numbers Multi-threading performance * 08 Dec 2016 » Turbo Boost and multi-threading performance * 22 Mar 2017 » Statistical variables in Java: not quite legal but very fast Assorted * 05 May 2014 » One handy C idiom: multi-statement macro * 07 May 2014 » From macros to templates * 16 Oct 2016 » Searching in a constant set using conflict-free hashing * 06 Nov 2016 » A bug story: data alignment on x86 * 23 Jul 2017 » The slow currentTimeMillis() * 18 Jul 2018 » Building a fast queue between C++ and Java * 17 Jan 2019 » To allocate or to pool? * 13 Apr 2019 » Searching for a better indexOf * 26 Sep 2019 » Making a char searcher in C * 07 Oct 2019 » Abnormal string hashing optimisation performance de-multiplexing Java C C++ macro meta-programming idiom templates GCC SSE AVX bug cache streams socket buffering stdin stdout affinity hashmap life assembly refactoring design-patterns Peano search matching alignment parallel real-time Linux Windows * 15 Apr 2014 » De-multiplexing of E1 streams in Java * 02 May 2014 » De-multiplexing of E1 stream: converting to C * 12 May 2014 » The mystery of an unstable performance * 15 May 2014 » How to make C run as fast as Java * 18 May 2014 » Size does matter * 04 Jun 2014 » Fast E1 de-multiplexing in C using SSE/AVX * 01 Oct 2014 » How to transpose a 16×16 byte matrix using SSE * 21 Oct 2014 » Bug story 2: Unrolling the 16×16 matrix transposition, or be careful with macros * 28 Oct 2014 » Macros, call by name, lambda and Jensen's device * 14 Nov 2014 » Lambdas and other callbacks in Java * 24 Nov 2014 » How cache affects demultiplexing of E1 * 24 Dec 2014 » More experiments with cache * 19 Jan 2015 » On the benefits of stream buffering in Java * 01 Feb 2015 » Standard input, buffering and affinity mask * 24 Apr 2015 » Game of Life, hash tables and hash codes * 10 Sep 2015 » Hash functions: disassembling and measuring performance * 17 Sep 2015 » Optimising division-based hash functions * 12 Oct 2015 » The fun and the cost of refactoring * 20 Oct 2015 » More optimisations of division-based hash: Karatsuba's method * 28 Oct 2015 » Don't trust a micro-benchmark * 21 Nov 2015 » CRC32: intrinsic, Java or C with JNI? * 04 Dec 2015 » Optimising the hash-based Life * 14 Dec 2015 » Choosing the hash map's capacity * 31 Jan 2016 » Home-made hash tables in Java * 21 Mar 2016 » Home-made hash tables in C++: a race against Java * 16 Oct 2016 » Searching in a constant set using conflict-free hashing * 06 Nov 2016 » A bug story: data alignment on x86 * 08 Dec 2016 » Turbo Boost and multi-threading performance * 22 Mar 2017 » Statistical variables in Java: not quite legal but very fast * 23 Jul 2017 » The slow currentTimeMillis() * 18 Jul 2018 » Building a fast queue between C++ and Java * 17 Jan 2019 » To allocate or to pool? * 13 Apr 2019 » Searching for a better indexOf * 26 Sep 2019 » Making a char searcher in C * 07 Oct 2019 » Abnormal string hashing * 15 Apr 2014 » De-multiplexing of E1 streams in Java * 02 May 2014 » De-multiplexing of E1 stream: converting to C * 19 Jan 2015 » On the benefits of stream buffering in Java * 01 Feb 2015 » Standard input, buffering and affinity mask * 15 Apr 2014 » De-multiplexing of E1 streams in Java * 02 May 2014 » De-multiplexing of E1 stream: converting to C * 24 Nov 2014 » How cache affects demultiplexing of E1 * 24 Dec 2014 » More experiments with cache * 15 Apr 2014 » De-multiplexing of E1 streams in Java * 15 May 2014 » How to make C run as fast as Java * 14 Nov 2014 » Lambdas and other callbacks in Java * 19 Jan 2015 » On the benefits of stream buffering in Java * 01 Feb 2015 » Standard input, buffering and affinity mask * 24 Apr 2015 » Game of Life, hash tables and hash codes * 10 Sep 2015 » Hash functions: disassembling and measuring performance * 17 Sep 2015 » Optimising division-based hash functions * 12 Oct 2015 » The fun and the cost of refactoring * 20 Oct 2015 » More optimisations of division-based hash: Karatsuba's method * 28 Oct 2015 » Don't trust a micro-benchmark * 21 Nov 2015 » CRC32: intrinsic, Java or C with JNI? * 04 Dec 2015 » Optimising the hash-based Life * 14 Dec 2015 » Choosing the hash map's capacity * 22 Dec 2015 » Implementing Peano arithmetic * 10 Jan 2016 » Home-made binary numbers * 31 Jan 2016 » Home-made hash tables in Java * 21 Mar 2016 » Home-made hash tables in C++: a race against Java * 08 Dec 2016 » Turbo Boost and multi-threading performance * 22 Mar 2017 » Statistical variables in Java: not quite legal but very fast * 23 Jul 2017 » The slow currentTimeMillis() * 18 Jul 2018 » Building a fast queue between C++ and Java * 17 Jan 2019 » To allocate or to pool? * 13 Apr 2019 » Searching for a better indexOf * 07 Oct 2019 » Abnormal string hashing * 02 May 2014 » De-multiplexing of E1 stream: converting to C * 05 May 2014 » One handy C idiom: multi-statement macro * 07 May 2014 » From macros to templates * 12 May 2014 » The mystery of an unstable performance * 15 May 2014 » How to make C run as fast as Java * 18 May 2014 » Size does matter * 04 Jun 2014 » Fast E1 de-multiplexing in C using SSE/AVX * 21 Sep 2014 » A bug story: testing your test code * 01 Oct 2014 » How to transpose a 16×16 byte matrix using SSE * 21 Oct 2014 » Bug story 2: Unrolling the 16×16 matrix transposition, or be careful with macros * 28 Oct 2014 » Macros, call by name, lambda and Jensen's device * 06 Nov 2016 » A bug story: data alignment on x86 * 26 Sep 2019 » Making a char searcher in C * 02 May 2014 » De-multiplexing of E1 stream: converting to C * 07 May 2014 » From macros to templates * 12 May 2014 » The mystery of an unstable performance * 15 May 2014 » How to make C run as fast as Java * 18 May 2014 » Size does matter * 04 Jun 2014 » Fast E1 de-multiplexing in C using SSE/AVX * 21 Sep 2014 » A bug story: testing your test code * 01 Oct 2014 » How to transpose a 16×16 byte matrix using SSE * 21 Oct 2014 » Bug story 2: Unrolling the 16×16 matrix transposition, or be careful with macros * 28 Oct 2014 » Macros, call by name, lambda and Jensen's device * 24 Nov 2014 » How cache affects demultiplexing of E1 * 24 Dec 2014 » More experiments with cache * 16 Oct 2016 » Searching in a constant set using conflict-free hashing * 18 Jul 2018 » Building a fast queue between C++ and Java * 17 Jan 2019 » To allocate or to pool? * 02 May 2014 » De-multiplexing of E1 stream: converting to C * 05 May 2014 » One handy C idiom: multi-statement macro * 02 May 2014 » De-multiplexing of E1 stream: converting to C * 07 May 2014 » From macros to templates * 05 May 2014 » One handy C idiom: multi-statement macro * 07 May 2014 » From macros to templates * 12 May 2014 » The mystery of an unstable performance * 15 May 2014 » How to make C run as fast as Java * 18 May 2014 » Size does matter * 04 Jun 2014 » Fast E1 de-multiplexing in C using SSE/AVX * 01 Oct 2014 » How to transpose a 16×16 byte matrix using SSE * 21 Oct 2014 » Bug story 2: Unrolling the 16×16 matrix transposition, or be careful with macros * 28 Oct 2014 » Macros, call by name, lambda and Jensen's device * 04 Jun 2014 » Fast E1 de-multiplexing in C using SSE/AVX * 01 Oct 2014 » How to transpose a 16×16 byte matrix using SSE * 21 Oct 2014 » Bug story 2: Unrolling the 16×16 matrix transposition, or be careful with macros * 04 Jun 2014 » Fast E1 de-multiplexing in C using SSE/AVX * 01 Oct 2014 » How to transpose a 16×16 byte matrix using SSE * 21 Oct 2014 » Bug story 2: Unrolling the 16×16 matrix transposition, or be careful with macros * 21 Sep 2014 » A bug story: testing your test code * 21 Oct 2014 » Bug story 2: Unrolling the 16×16 matrix transposition, or be careful with macros * 24 Nov 2014 » How cache affects demultiplexing of E1 * 24 Dec 2014 » More experiments with cache * 19 Jan 2015 » On the benefits of stream buffering in Java * 01 Feb 2015 » Standard input, buffering and affinity mask * 19 Jan 2015 » On the benefits of stream buffering in Java * 19 Jan 2015 » On the benefits of stream buffering in Java * 01 Feb 2015 » Standard input, buffering and affinity mask * 01 Feb 2015 » Standard input, buffering and affinity mask * 01 Feb 2015 » Standard input, buffering and affinity mask * 01 Feb 2015 » Standard input, buffering and affinity mask * 24 Apr 2015 » Game of Life, hash tables and hash codes * 10 Sep 2015 » Hash functions: disassembling and measuring performance * 17 Sep 2015 » Optimising division-based hash functions * 12 Oct 2015 » The fun and the cost of refactoring * 20 Oct 2015 » More optimisations of division-based hash: Karatsuba's method * 28 Oct 2015 » Don't trust a micro-benchmark * 21 Nov 2015 » CRC32: intrinsic, Java or C with JNI? * 04 Dec 2015 » Optimising the hash-based Life * 14 Dec 2015 » Choosing the hash map's capacity * 22 Dec 2015 » Implementing Peano arithmetic * 10 Jan 2016 » Home-made binary numbers * 31 Jan 2016 » Home-made hash tables in Java * 21 Mar 2016 » Home-made hash tables in C++: a race against Java * 16 Oct 2016 » Searching in a constant set using conflict-free hashing * 07 Oct 2019 » Abnormal string hashing * 24 Apr 2015 » Game of Life, hash tables and hash codes * 10 Sep 2015 » Hash functions: disassembling and measuring performance * 17 Sep 2015 » Optimising division-based hash functions * 12 Oct 2015 » The fun and the cost of refactoring * 20 Oct 2015 » More optimisations of division-based hash: Karatsuba's method * 28 Oct 2015 » Don't trust a micro-benchmark * 21 Nov 2015 » CRC32: intrinsic, Java or C with JNI? * 04 Dec 2015 » Optimising the hash-based Life * 14 Dec 2015 » Choosing the hash map's capacity * 31 Jan 2016 » Home-made hash tables in Java * 21 Mar 2016 » Home-made hash tables in C++: a race against Java * 10 Sep 2015 » Hash functions: disassembling and measuring performance * 12 Oct 2015 » The fun and the cost of refactoring * 12 Oct 2015 » The fun and the cost of refactoring * 22 Dec 2015 » Implementing Peano arithmetic * 10 Jan 2016 » Home-made binary numbers * 16 Oct 2016 » Searching in a constant set using conflict-free hashing * 13 Apr 2019 » Searching for a better indexOf * 26 Sep 2019 » Making a char searcher in C * 16 Oct 2016 » Searching in a constant set using conflict-free hashing * 06 Nov 2016 » A bug story: data alignment on x86 * 22 Mar 2017 » Statistical variables in Java: not quite legal but very fast * 23 Jul 2017 » The slow currentTimeMillis() * 18 Jul 2018 » Building a fast queue between C++ and Java * 17 Jan 2019 » To allocate or to pool? * 23 Jul 2017 » The slow currentTimeMillis() * 23 Jul 2017 » The slow currentTimeMillis() * 07 Oct 2019 » Abnormal string hashing * 26 Sep 2019 » Making a char searcher in C * 13 Apr 2019 » Searching for a better indexOf * 17 Jan 2019 » To allocate or to pool? * 18 Jul 2018 » Building a fast queue between C++ and Java * 23 Jul 2017 » The slow currentTimeMillis() * 22 Mar 2017 » Statistical variables in Java: not quite legal but very fast * 08 Dec 2016 » Turbo Boost and multi-threading performance * 06 Nov 2016 » A bug story: data alignment on x86 * 16 Oct 2016 » Searching in a constant set using conflict-free hashing * 21 Mar 2016 » Home-made hash tables in C++: a race against Java * 31 Jan 2016 » Home-made hash tables in Java * 10 Jan 2016 » Home-made binary numbers * 22 Dec 2015 » Implementing Peano arithmetic * 14 Dec 2015 » Choosing the hash map's capacity * 04 Dec 2015 » Optimising the hash-based Life * 21 Nov 2015 » CRC32: intrinsic, Java or C with JNI? * 28 Oct 2015 » Don't trust a micro-benchmark * 20 Oct 2015 » More optimisations of division-based hash: Karatsuba's method * 12 Oct 2015 » The fun and the cost of refactoring * 17 Sep 2015 » Optimising division-based hash functions * 10 Sep 2015 » Hash functions: disassembling and measuring performance * 24 Apr 2015 » Game of Life, hash tables and hash codes * 01 Feb 2015 » Standard input, buffering and affinity mask * 19 Jan 2015 » On the benefits of stream buffering in Java * 24 Dec 2014 » More experiments with cache * 24 Nov 2014 » How cache affects demultiplexing of E1 * 14 Nov 2014 » Lambdas and other callbacks in Java * 28 Oct 2014 » Macros, call by name, lambda and Jensen's device * 21 Oct 2014 » Bug story 2: Unrolling the 16×16 matrix transposition, or be careful with macros * 01 Oct 2014 » How to transpose a 16×16 byte matrix using SSE * 21 Sep 2014 » A bug story: testing your test code * 04 Jun 2014 » Fast E1 de-multiplexing in C using SSE/AVX * 18 May 2014 » Size does matter * 15 May 2014 » How to make C run as fast as Java * 12 May 2014 » The mystery of an unstable performance * 07 May 2014 » From macros to templates * 05 May 2014 » One handy C idiom: multi-statement macro * 02 May 2014 » De-multiplexing of E1 stream: converting to C * 15 Apr 2014 » De-multiplexing of E1 streams in Java github.com/pzemtsov RSS feed @blog_pzemtsov