• Show log

    Commit

  • Hash : 5b177b3c
    Author : mayeut
    Date : 2018-03-22T11:36:43

    C/SSE2 optimization of encode_mcu_AC_first()
    
    This commit adds C and SSE2 optimizations for the encode_mcu_AC_first()
    function used in progressive Huffman encoding.
    
    The image used for testing can be retrieved from this page:
    https://blog.cloudflare.com/doubling-the-speed-of-jpegtran
    
    All timings done on `Intel(R) Core(TM) i7-4870HQ CPU @ 2.50GHz`
    clang version is `Apple LLVM version 9.0.0 (clang-900.0.39.2)`
    gcc-5 version is `gcc-5 (Homebrew GCC 5.5.0) 5.5.0`
    gcc-7 version is `gcc-7 (Homebrew GCC 7.2.0) 7.2.0`
    
    Here are the results in comparison to libjpeg-turbo@293263c using
    `time ./jpegtran -outfile /dev/null -progressive -optimise -copy none print_poster_0025.jpg`
    
    C
    clang x86_64: +19%
    gcc-5 x86_64: +80%
    gcc-7 x86_64: +57%
    clang i386: +5%
    gcc-5 i386: +59%
    gcc-7 i386: +51%
    
    SSE2
    clang x86_64: +79%
    gcc-5 x86_64: +158%
    gcc-7 x86_64: +122%
    clang i386: +71%
    gcc-5 i386: +134%
    gcc-7 i386: +135%
    
    Discussion in libjpeg-turbo/libjpeg-turbo#46
    

  • Properties

  • Git HTTP https://git.kmx.io/kc3-lang/libjpeg-turbo.git
    Git SSH git@git.kmx.io:kc3-lang/libjpeg-turbo.git
    Public access ? public
    Description

    Fork of libjpeg with SIMD

    Users
    thodg_m kc3_lang_org thodg_w www_kmx_io thodg_l thodg
    Tags