# How to use binary shaders?

**URL:** <https://forums.imgtec.com/t/how-to-use-binary-shaders/956>\
**Category:** PowerVR Insider\
**Created:** [December 26, 2010, 7:49am UTC](https://forums.imgtec.com/t/how-to-use-binary-shaders/956 "2010-12-26T07:49:29Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![3dgamer](https://avatars.discourse-cdn.com/v4/letter/3/b3f665/32.png) [@3dgamer](https://forums.imgtec.com/u/3dgamer)\
**Post date:** [December 26, 2010, 7:49am UTC](https://forums.imgtec.com/t/how-to-use-binary-shaders/956/1 "2010-12-26T07:49:29Z")

</div>

Hi,  
I can’t get binary shaders working: when I upload any of my shader binarys (the file output by the PVRUniSco, right?) i get an GL\_OUT\_OF\_MEMORY (1285) error. What am I doing wrong? What might cause this error?  
My device is a SE Satio (sgx530)

---

<div class="post-metadata">

**Author:** ![GordonMaclachlan](https://avatars.discourse-cdn.com/v4/letter/g/c68b51/32.png) [@GordonMaclachlan](https://forums.imgtec.com/u/GordonMaclachlan)\
**Post date:** [January 4, 2011, 4:06pm UTC](https://forums.imgtec.com/t/how-to-use-binary-shaders/956/2 "2011-01-04T16:06:42Z")

</div>

The shader compiler and the version of the drivers using the output binary have to exactly match for binary shader upload to be effective. The PVRUniSCo compiler version number is very unlikely to match the driver version on your Satio, I’m afraid.  
  
What are your reasons for trying binary shaders and not compiling them on the device?

---

<div class="post-metadata">

**Author:** ![3dgamer](https://avatars.discourse-cdn.com/v4/letter/3/b3f665/32.png) [@3dgamer](https://forums.imgtec.com/u/3dgamer)\
**Post date:** [January 4, 2011, 5:05pm UTC](https://forums.imgtec.com/t/how-to-use-binary-shaders/956/3 "2011-01-04T17:05:46Z")

</div>

I’m going to need quiet a lot shaders (The shaders have to be compile with different preprocessor definitions, eg. for reflections one version with and one without dual paraboloid parametrization), and shader compilation is slow. I don’t want my game to take 20 secs to start up, and I think binary shaders are uploaded&nbsp; faster.  
  
BTW: Another thing that I’ve encountered is that shader compilation takes twice the time if it is done after the first frame is rendered, is this normal?
