[Beignet] [PATCH 0/3] Generate as_ and convert_ functions

He Junyan junyan.he at linux.intel.com
Thu Jun 20 22:11:57 PDT 2013


On 06/20/2013 07:05 PM, Zhigang Gong wrote:
> On Tue, Jun 18, 2013 at 03:58:10PM +0800, He Junyan wrote:
>> hi Simon:
>>
>> Very thanks for your patch.
>> There still some issues after apply your patch:
>> 1.  Some convert function like convert_int8_rtp, convert_int8_rtn
>> and convert_int8_rte
>>       seems be ignored, you can refer to the test case of
>> vector-conversion.cl in piglit CL test.
>> 2.  The test case in piglit named gegl-rgb-gamma-u8-to-ragabaf.cl
>> report a precision problem.
>>       This case convert a  int vect to a float vect and then do the
>> calculation. The precision may caused
>>       by conversion and may not, I need to check further.
> Junyan, does the patch cause any regression? Are you ok to accept this
> patch based on your test result? I think the issue 1 should be fixed
> in a new patch, and the issue 2 may be another independent issue. Or do
> you have any update for issue 3.
I agree, we can send new patch to fix these issues.
>
>> 3.  The ocl_stdlib.h after the patch seems huge and I can feel it
>> makes the runtime compile time
>>       a little longer when I run all the test cases one by one. I
>> think we should seek some solution
>>       such as external AST cache file to avoid these code to be built
>> every time by Clang for every
>>       kernel file.
> I raised the same issue when Simon submitted the first version of patch.
> And I know Simon have been working on fix this issue about one month ago.
> As now the highest priority is to meet the piglit pass rate, I prefer to
> ignore this issue currently.
>
> What's your opinion?
Really no need to do it so hurry.  Just a small performance side effect. 
If Simon have no
time, I will research for it, too.
>>
>> On 06/13/2013 07:15 PM, Simon Richter wrote:
>>> This replaces the incomplete list of conversion functions with a generated
>>> one that can be updated by a script.
>>>
>>> In the long run, this should be generated on-the-fly via an ExternalASTSource
>>>
>>> Simon Richter (3):
>>>    Generate all supported as_* functions
>>>    Define all convert_* functions.
>>>    Add long and ulong types to generated functions.
>>>
>>>   backend/src/gen_as.sh         |   83 ++
>>>   backend/src/gen_convert.sh    |   52 +
>>>   backend/src/genconfig.sh      |   11 +
>>>   backend/src/ocl_stdlib.h      | 3223 ++++++++++++++++++++++++++++++++++++++++-
>>>   backend/src/update.sh         |    3 +
>>>   backend/src/update_as.sh      |   11 +
>>>   backend/src/update_convert.sh |   11 +
>>>   7 files changed, 3363 insertions(+), 31 deletions(-)
>>>   create mode 100755 backend/src/gen_as.sh
>>>   create mode 100755 backend/src/gen_convert.sh
>>>   create mode 100644 backend/src/genconfig.sh
>>>   create mode 100755 backend/src/update.sh
>>>   create mode 100755 backend/src/update_as.sh
>>>   create mode 100755 backend/src/update_convert.sh
>>>
>> _______________________________________________
>> Beignet mailing list
>> Beignet at lists.freedesktop.org
>> http://lists.freedesktop.org/mailman/listinfo/beignet
> _______________________________________________
> Beignet mailing list
> Beignet at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/beignet
>



More information about the Beignet mailing list