VSIPL 1.6 RTF Avatar
  1. OMG Issue

VSIPL16 — Sort function

  • Key: VSIPL16-31
  • Legacy Issue Number: 18575
  • Status: open  
  • Source: Anonymous
  • Summary:

    I don't think that Sort is defined the best way in VSIPL.
    Why spec doesn't define create function? Such function will let user to
    allocate additional memory which are required by some sorting methods.
    Why not to define out-of-place sort?
    If I work on 64-bit system, sort array of 32-bit FP values and need index
    vector, I'll get 64-bit indices which are not supposed to be that long.
    This is because last argument of sort function is
    const vsip_vview_vi *index and

    _vi means (unsigned long int) i.e. 64-bit elements.
    In the sort I implemented for AVX I permute data in vector registers and
    apply same permute to the indices which occupy other vector register.
    It's OK if function has to produce 32-bit indices, but it will be wrong
    when I have to shuffle 64-bit values.

    This last comment is applicable to other functions as well - index vector
    on 64-bit systems doesn't have to be 64-bit value because data arrays
    today are not huge yet.

  • Reported: VSIPL 1.4 — Mon, 25 Mar 2013 04:00 GMT
  • Updated: Fri, 6 Mar 2015 20:57 GMT