[Beignet] build problems: ASSERTION FAILED: Fail to create the gen context

Zhigang Gong zhigang.gong at linux.intel.com
Sun Jul 6 18:16:46 PDT 2014


> -----Original Message-----
> From: Beignet [mailto:beignet-bounces at lists.freedesktop.org] On Behalf Of
> Igor Gnatenko
> Sent: Friday, July 4, 2014 7:53 PM
> To: Zhigang Gong
> Cc: Adel Gadllah; An open source open CL implemenation for Intel platform
> Subject: Re: [Beignet] build problems: ASSERTION FAILED: Fail to create the gen
> context
> 
> Hi,
> On Fri, 2014-07-04 at 14:09 +0800, Zhigang Gong wrote:
> > On Fri, Jul 04, 2014 at 07:53:42AM +0200, Adel Gadllah wrote:
> > > Zhigang Gong:
> > > >On Fri, Jul 04, 2014 at 01:33:14AM +0400, Igor Gnatenko wrote:
> > > >>Hi,
> > > >>
> > > >>I've long time no tested beignet builds. Now I've updated it to
> > > >>0.9.0 in Fedora rawhide[0].
> > > >>
> > > >>And it failed to build.
> > > >>
> > > >>Generating ../../utests/../kernels/compiler_ceil.bin
> > > >>Unknown opt
> > > >>/builddir/build/BUILD/Beignet-0.9.0-Source/build/backend/src/gbe_bin_g
> enerater: option requires an argument -- 't'
> > > >>
> > > >>ASSERTION FAILED: Fail to create the gen context
> > > >>   at
> > > >>file
> > > >>/builddir/build/BUILD/Beignet-0.9.0-Source/backend/src/backend/gen
> > > >>_program.cpp, function virtual gbe::Kernel*
> > > >>gbe::GenProgram::compileKernel(const gbe::ir::Unit&, const
> > > >>string&, bool), line 167
> > > >>
> > > >>And etc. I'm attaching FULL build log.
> > > >>
> > > >>[0]http://pkgs.fedoraproject.org/cgit/beignet.git/commit/?id=0c45e
> > > >>57cbecf72e1a5f243bbc0f375e3f19a2b03
> > > >>--
> > > >>-Igor Gnatenko
> > > >
> > > >>/builddir/build/BUILD/Beignet-0.9.0-Source/src/GetGenID.sh: line
> > > >>3: lspci: command not found
> > > >>-- Platform Gen PCI id is
> > > >The root cause is that now beignet will build internal binary
> > > >kernels according current build host's Gen VGA PCI id.
> > > This can't work for distributions that want to ship beignet. The
> > > system it gets build on is not the one it runs on. Also distribution
> > > build systems tend to be virtual machines that do not have any real
> > > (or intel) vga hardware.
> > You are right, this is a problem for distributions. I just realized
> > this issue when I replied to Igor. We will discuss how to make it friendly for
> package maintainer soon.
> Why do we need find out VGA PCI id?
As beignet need to generate binary code for builtin kernels, and currently beignet choose to generate the target binary code directly.
We are considering to change this behavior to generate llvm bitcode level binary code for the internal kernels. Then we can fix this
Issue completely.
> > Thanks for pointing this out.
> 
> --
> -Igor Gnatenko



More information about the Beignet mailing list