[Mesa-dev] [PATCH v2 00/13] swr: update rasterizer

Cherniak, Bruce bruce.cherniak at intel.com
Thu Jun 29 17:05:52 UTC 2017


Reviewed-by: Bruce Cherniak <bruce.cherniak at intel.com> 

> On Jun 27, 2017, at 1:09 PM, Tim Rowley <timothy.o.rowley at intel.com> wrote:
> 
> Highlights include splitting the heavily templated files into multiple
> chunks to speed compile (2x for a large machine), and switching the
> simd intrinsic usage from a macro-based header to a more c++ feeling
> library.
> 
> No regressions on piglit or vtk tests, passes "make dist"/compile.
> 
> v2:
>  * split changes to generators to seperate functionality/cleanups
>  * add scons patch so that .inl files can be handled
>  * add comments explaining makefile .INTERMEDIATE usage
> 
> Tim Rowley (13):
>  swr/rast: generators will create target directories
>  swr/rast: gen_backends.py quote cleanup
>  swr/rast: gen_backends.py removal of commented debug prints
>  swr/rast: Split backend.cpp to improve compile time
>  swr/rast: Support dynamically sized vertex layout
>  swr/rast: gen_backends.py remove extraneous semicolon
>  swr/rast: Split rasterizer.cpp to improve compile time
>  swr/rast: Fix unused variable warnings
>  scons: allow .inl file extension
>  swr/rast: Switch intrinsic usage to SIMDLib
>  swr/rast: Fix missing setup of psContext.pColorBuffer
>  swr/rast: move default split size from driver to rasterizer
>  swr/rast: increase number of possible draws in flight
> 
> scons/custom.py                                    |    2 +-
> src/gallium/drivers/swr/Makefile.am                |   66 +-
> src/gallium/drivers/swr/Makefile.sources           |   19 +-
> src/gallium/drivers/swr/SConscript                 |   41 +-
> .../drivers/swr/rasterizer/codegen/gen_backends.py |   55 +-
> .../drivers/swr/rasterizer/codegen/gen_common.py   |    7 +
> .../drivers/swr/rasterizer/codegen/knob_defs.py    |    4 +-
> .../rasterizer/codegen/templates/gen_backend.cpp   |    1 +
> .../codegen/templates/gen_header_init.hpp          |   43 +
> .../codegen/templates/gen_rasterizer.cpp           |   42 +
> src/gallium/drivers/swr/rasterizer/common/intrin.h |  102 +-
> .../drivers/swr/rasterizer/common/simd16intrin.h   | 1223 ++-----------
> .../drivers/swr/rasterizer/common/simdintrin.h     | 1257 +++-----------
> .../drivers/swr/rasterizer/common/simdlib.hpp      |  550 ++++++
> .../swr/rasterizer/common/simdlib_128_avx.inl      |  545 ++++++
> .../swr/rasterizer/common/simdlib_128_avx2.inl     |   68 +
> .../swr/rasterizer/common/simdlib_128_avx512.inl   |  408 +++++
> .../swr/rasterizer/common/simdlib_256_avx.inl      |  757 +++++++++
> .../swr/rasterizer/common/simdlib_256_avx2.inl     |  234 +++
> .../swr/rasterizer/common/simdlib_256_avx512.inl   |  409 +++++
> .../swr/rasterizer/common/simdlib_512_avx512.inl   |  682 ++++++++
> .../rasterizer/common/simdlib_512_avx512_masks.inl |   27 +
> .../swr/rasterizer/common/simdlib_512_emu.inl      |  842 +++++++++
> .../rasterizer/common/simdlib_512_emu_masks.inl    |   28 +
> .../swr/rasterizer/common/simdlib_interface.hpp    |  428 +++++
> .../swr/rasterizer/common/simdlib_types.hpp        |  377 +++++
> src/gallium/drivers/swr/rasterizer/core/api.cpp    |    8 +-
> .../drivers/swr/rasterizer/core/backend.cpp        |  809 +--------
> src/gallium/drivers/swr/rasterizer/core/backend.h  | 1033 +----------
> .../drivers/swr/rasterizer/core/backend_clear.cpp  |  281 +++
> .../drivers/swr/rasterizer/core/backend_impl.h     | 1067 ++++++++++++
> .../drivers/swr/rasterizer/core/backend_sample.cpp |  344 ++++
> .../swr/rasterizer/core/backend_singlesample.cpp   |  320 ++++
> src/gallium/drivers/swr/rasterizer/core/binner.cpp |  293 ++--
> src/gallium/drivers/swr/rasterizer/core/clip.cpp   |    6 +-
> src/gallium/drivers/swr/rasterizer/core/clip.h     |   50 +-
> src/gallium/drivers/swr/rasterizer/core/context.h  |    2 +-
> .../swr/rasterizer/core/format_conversion.h        |    8 +-
> .../drivers/swr/rasterizer/core/format_types.h     |   30 +-
> .../drivers/swr/rasterizer/core/format_utils.h     |  268 +--
> .../drivers/swr/rasterizer/core/frontend.cpp       |   16 +-
> src/gallium/drivers/swr/rasterizer/core/frontend.h |    4 +-
> .../drivers/swr/rasterizer/core/multisample.cpp    |   48 -
> src/gallium/drivers/swr/rasterizer/core/pa.h       |   16 +-
> src/gallium/drivers/swr/rasterizer/core/pa_avx.cpp |  106 +-
> .../drivers/swr/rasterizer/core/rasterizer.cpp     | 1788 +++-----------------
> .../drivers/swr/rasterizer/core/rasterizer.h       |   31 +-
> .../drivers/swr/rasterizer/core/rasterizer_impl.h  | 1376 +++++++++++++++
> src/gallium/drivers/swr/rasterizer/core/state.h    |   12 +
> .../drivers/swr/rasterizer/memory/StoreTile.h      |  156 +-
> src/gallium/drivers/swr/swr_screen.cpp             |    4 -
> src/gallium/drivers/swr/swr_shader.cpp             |    2 +
> src/gallium/drivers/swr/swr_state.cpp              |    2 +
> 53 files changed, 10145 insertions(+), 6152 deletions(-)
> create mode 100644 src/gallium/drivers/swr/rasterizer/codegen/templates/gen_header_init.hpp
> create mode 100644 src/gallium/drivers/swr/rasterizer/codegen/templates/gen_rasterizer.cpp
> create mode 100644 src/gallium/drivers/swr/rasterizer/common/simdlib.hpp
> create mode 100644 src/gallium/drivers/swr/rasterizer/common/simdlib_128_avx.inl
> create mode 100644 src/gallium/drivers/swr/rasterizer/common/simdlib_128_avx2.inl
> create mode 100644 src/gallium/drivers/swr/rasterizer/common/simdlib_128_avx512.inl
> create mode 100644 src/gallium/drivers/swr/rasterizer/common/simdlib_256_avx.inl
> create mode 100644 src/gallium/drivers/swr/rasterizer/common/simdlib_256_avx2.inl
> create mode 100644 src/gallium/drivers/swr/rasterizer/common/simdlib_256_avx512.inl
> create mode 100644 src/gallium/drivers/swr/rasterizer/common/simdlib_512_avx512.inl
> create mode 100644 src/gallium/drivers/swr/rasterizer/common/simdlib_512_avx512_masks.inl
> create mode 100644 src/gallium/drivers/swr/rasterizer/common/simdlib_512_emu.inl
> create mode 100644 src/gallium/drivers/swr/rasterizer/common/simdlib_512_emu_masks.inl
> create mode 100644 src/gallium/drivers/swr/rasterizer/common/simdlib_interface.hpp
> create mode 100644 src/gallium/drivers/swr/rasterizer/common/simdlib_types.hpp
> create mode 100644 src/gallium/drivers/swr/rasterizer/core/backend_clear.cpp
> create mode 100644 src/gallium/drivers/swr/rasterizer/core/backend_impl.h
> create mode 100644 src/gallium/drivers/swr/rasterizer/core/backend_sample.cpp
> create mode 100644 src/gallium/drivers/swr/rasterizer/core/backend_singlesample.cpp
> delete mode 100644 src/gallium/drivers/swr/rasterizer/core/multisample.cpp
> create mode 100644 src/gallium/drivers/swr/rasterizer/core/rasterizer_impl.h
> 
> -- 
> 2.7.4
> 
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev



More information about the mesa-dev mailing list