Jack,

Thank you for the feedback.

In my path to enlightenment I stumbled across the following article, which 
seems to suggest that using swrast is not such a great idea:

http://www.phoronix.com/scan.php?page=article&item=mesa_81_llvmpipe&num=1

Any comment on that?

--
Davide Vanzo, PhD
Application Developer
Adjunct Assistant Professor of Chemical and Biomolecular Engineering
Advanced Computing Center for Research and Education (ACCRE)
Vanderbilt University - Hill Center 201
(615)-875-9137
www.accre.vanderbilt.edu

On May 10 2017, at 12:01 pm, Jack Perdue <[email protected]> wrote:

AFAIK, we haven't had any problems with this change
(things seem to be working.... users aren't yelling....):

< --with-gallium-drivers='swrast,swr'\
---
 > --with-gallium-drivers='swrast'\

jack

On 05/10/2017 11:45 AM, Vanzo, Davide wrote:
> Hello fellow easybuilders,
>
> I am working on creating a minimal toolchain set of modules for X11
> and Qt for GUI-based software in the foss-2016b toolchain. When trying
> to install Mesa-12.0.2-GCC-5.4.0-2.26.eb (created by
> using Mesa-12.0.2-foss-2016b.eb) it fails when building the libswrAVX2
> since the LLVM library has been built on a Nehalem machine which does
> not have support for AVX (see log at the end of the email).
>
> Clearly one solution would be to avoid building SWR as part of Mesa
> but I have no idea of the implication of this choice since I am not
> very familiar with this type of libraries.
>
> Any suggestion?
>
> Thanks!
>
>
> PS: Here is the error log:
>
> CXX rasterizer/jitter/libswrAVX2_la-blend_jit.lo
> CXX rasterizer/jitter/libswrAVX2_la-builder.lo
> CXX rasterizer/jitter/libswrAVX2_la-builder_misc.lo
> CXX rasterizer/jitter/libswrAVX2_la-fetch_jit.lo
> CXX rasterizer/jitter/libswrAVX2_la-JitManager.lo
> CXX rasterizer/jitter/libswrAVX2_la-streamout_jit.lo
> CXX rasterizer/memory/libswrAVX2_la-ClearTile.lo
> CXX rasterizer/memory/libswrAVX2_la-LoadTile.lo
> CXX rasterizer/memory/libswrAVX2_la-StoreTile.lo
> rasterizer/core/threads.cpp: In function ‘void
> WorkOnFifoBE(SWR_CONTEXT*, uint32_t, uint64_t&, TileSet&, uint32_t,
> uint32_t)’:
> rasterizer/core/threads.cpp:467:26: warning: unused variable
> ‘numWorkItems’ [-Wunused-variable]
> uint32_t numWorkItems = tile.getNumQueued();
> ^
> CXX rasterizer/scripts/libswrAVX2_la-gen_knobs.lo
> CXX rasterizer/jitter/libswrAVX2_la-builder_x86.lo
> CXX rasterizer/jitter/libswrAVX2_la-builder_gen.lo
> CXX swr_loader.lo
> CXX rasterizer/common/libswrAVX_la-formats.lo
> CXX rasterizer/common/libswrAVX_la-rdtsc_buckets.lo
> rasterizer/jitter/builder_misc.cpp: In member function ‘llvm::Value*
> Builder::PMAXSD(llvm::Value*, llvm::Value*)’:
> rasterizer/jitter/builder_misc.cpp:862:77: error: ‘x86_sse41_pmaxsd’
> is not a member of ‘llvm::Intrinsic’
> Function* pmaxsd =
> Intrinsic::getDeclaration(JM()->mpCurrentModule,
> Intrinsic::x86_sse41_pmaxsd);
> ^
> rasterizer/jitter/builder_misc.cpp: In member function ‘llvm::Value*
> Builder::PMINSD(llvm::Value*, llvm::Value*)’:
> rasterizer/jitter/builder_misc.cpp:891:77: error: ‘x86_sse41_pminsd’
> is not a member of ‘llvm::Intrinsic’
> Function* pminsd =
> Intrinsic::getDeclaration(JM()->mpCurrentModule,
> Intrinsic::x86_sse41_pminsd);
> ^
> make[5]: *** [rasterizer/jitter/libswrAVX2_la-builder_misc.lo] Error 1
> make[5]: *** Waiting for unfinished jobs....
> rasterizer/jitter/builder_x86.cpp: In member function ‘llvm::Value*
> Builder::VPMINSD(llvm::Value*, llvm::Value*)’:
> rasterizer/jitter/builder_x86.cpp:85:71: error: ‘x86_avx2_pmins_d’ is
> not a member of ‘llvm::Intrinsic’
> Function *func = Intrinsic::getDeclaration(JM()->mpCurrentModule,
> Intrinsic::x86_avx2_pmins_d);
> ^
> rasterizer/jitter/builder_x86.cpp: In member function ‘llvm::Value*
> Builder::VPMAXSD(llvm::Value*, llvm::Value*)’:
> rasterizer/jitter/builder_x86.cpp:92:71: error: ‘x86_avx2_pmaxs_d’ is
> not a member of ‘llvm::Intrinsic’
> Function *func = Intrinsic::getDeclaration(JM()->mpCurrentModule,
> Intrinsic::x86_avx2_pmaxs_d);
> ^
> rasterizer/jitter/builder_x86.cpp: In member function ‘llvm::Value*
> Builder::VPMOVSXBD(llvm::Value*)’:
> rasterizer/jitter/builder_x86.cpp:148:71: error: ‘x86_avx2_pmovsxbd’
> is not a member of ‘llvm::Intrinsic’
> Function *func = Intrinsic::getDeclaration(JM()->mpCurrentModule,
> Intrinsic::x86_avx2_pmovsxbd);
> ^
> rasterizer/jitter/builder_x86.cpp: In member function ‘llvm::Value*
> Builder::VPMOVSXWD(llvm::Value*)’:
> rasterizer/jitter/builder_x86.cpp:155:71: error: ‘x86_avx2_pmovsxwd’
> is not a member of ‘llvm::Intrinsic’
> Function *func = Intrinsic::getDeclaration(JM()->mpCurrentModule,
> Intrinsic::x86_avx2_pmovsxwd);
> ^
> make[5]: *** [rasterizer/jitter/libswrAVX2_la-builder_x86.lo] Error 1
> make[5]: Leaving directory
> `/tmp/Mesa/12.0.2/GCC-5.4.0-2.26/mesa-12.0.2/src/gallium/drivers/swr'
> make[4]: *** [all] Error 2
> make[4]: Leaving directory
> `/tmp/Mesa/12.0.2/GCC-5.4.0-2.26/mesa-12.0.2/src/gallium/drivers/swr'
> make[3]: *** [all-recursive] Error 1
> make[3]: Leaving directory
> `/tmp/Mesa/12.0.2/GCC-5.4.0-2.26/mesa-12.0.2/src/gallium'
> make[2]: *** [all-recursive] Error 1
> make[2]: Leaving directory
> `/tmp/Mesa/12.0.2/GCC-5.4.0-2.26/mesa-12.0.2/src'
> make[1]: *** [all] Error 2
> make[1]: Leaving directory
> `/tmp/Mesa/12.0.2/GCC-5.4.0-2.26/mesa-12.0.2/src'
> make: *** [all-recursive] Error 1
>
>
> --
> Davide Vanzo, PhD
> Application Developer
> Adjunct Assistant Professor of Chemical and Biomolecular Engineering
> Advanced Computing Center for Research and Education (ACCRE)
> Vanderbilt University - Hill Center 201
> (615)-875-9137
> www.accre.vanderbilt.edu

Reply via email to