ATI Stream SDK v2.1 include image object support

Discussion in 'GPGPU Technology & Programming' started by cho, May 3, 2010.

  1. cho

    cho
    Regular

    Joined:
    Feb 9, 2002
    Messages:
    411
    http://developer.amd.com/gpu/ATIStreamSDK/Pages/default.aspx#one

    What’s New in v2.1

    • Support for openSUSE™ 11.2 and Red Hat® Enterprise Linux® 5.4.
    • Support for OpenCL™ / OpenGL® interoperability.
    • Support for OpenCL™ byte addressable stores3,4.
    • Support for OpenCL™ images3.
    • Extension: Support for double-precision floating point basic arithmetic in OpenCL™ C kernels.
    • Extension: Support for AMD media operations in OpenCL™.
    • Extension: Support for device fission in OpenCL™ 4.
    • Extension: Support for device attribute queries in OpenCL™.
    • Preview Feature: Support forbinary OpenCL™ kernels.
    • Additional OpenCL™ samples:
      • HistogramAtomics
      • MatrixMulDouble (under cpp_cl)
      • MatrixMulImage
      • SimpleGL
      • SimpleImage
      • SobelFilterImage (under cpp_cl)
      • URNGNoiseGL
    • Stream KernelAnalyzer 1.5 installer now bundled with the ATI Stream SDK v2.1.
    • Various OpenCL™ compiler and runtime fixes and enhancements (see developer release notes for more details).
    • Support for new hardware:
      • ATI Radeon™ HD 5830 GPU
      • ATI Radeon™ HD 5450 GPU
      • ATI FirePro™ V8800 GPU
      • ATI FirePro™ V7800 GPU
      • ATI FirePro™ V5800 GPU
      • ATI FirePro™ V4800 GPU
      • ATI FirePro™ V3800 GPU
      • ATI Mobility Radeon™ HD 5800 Series GPUs
      • ATI Mobility Radeon™ HD 5700 Series GPUs
      • ATI Mobility Radeon™ HD 5600 Series GPUs
      • ATI Mobility Radeon™ HD 5400 Series GPUs
      • ATI FirePro M7820™ GPU
      • ATI FirePro M5800™ GPU
     
  2. rpg.314

    Veteran

    Joined:
    Jul 21, 2008
    Messages:
    4,294
    Location:
    /
    What is this device fission? Can't find a thing on Khronos API registry. :(
     
  3. Dade

    Newcomer

    Joined:
    Dec 20, 2009
    Messages:
    206
    OpenCL 4 ? May be a typo and they refer to OpenGL 4 ?

    I was wondering too what device fission is :?:
     
  4. denev2004

    Newcomer

    Joined:
    Apr 28, 2010
    Messages:
    143
    Location:
    China
    While AMD is giving its new support to Red Hat, NVIDIA is trying to stop Linux Driver Service = =
    And why they put of DP?That's bad....
     
  5. rpg.314

    Veteran

    Joined:
    Jul 21, 2008
    Messages:
    4,294
    Location:
    /
    No, it's a reference number in the original material.
    Split a multicore-CPU into 2 or more opencl cpu devices?

    Why would you need such a thing?
     
  6. Dade

    Newcomer

    Joined:
    Dec 20, 2009
    Messages:
    206
    I use AMD OpenCL CPU device only as debugging/developing tool (native code is always faster). This would be a very handy feature to emulate the presence of multiple OpenCL devices.

    It would be a quite nice feature to have for testing/debugging.
     
  7. Jawed

    Legend

    Joined:
    Oct 2, 2004
    Messages:
    10,628
    Location:
    London
    Blimey, that's more like v3 than v2.1. EDIT: hmm, the DP support is still "preview".

    Fission might allow treating the cores of a CPU separately. Older versions of the SDK take over all of a CPU's cores I believe. With fission the programmer can presumably keep a host core (or more) to himself, unaffected by OpenCL device allocation.

    Also, presumably, this means that task parallelism across CPU cores can be more finely-grained.

    Jawed
     
  8. pcchen

    Moderator Veteran

    Joined:
    Feb 6, 2002
    Messages:
    2,645
    Location:
    Taiwan
    I'm not sure about this preview thing. They have an extension for DP support which has reduced functionalities than the official Khronos extension. Are they going to continue using this or somehow transfer to the official extension in the future?
     
  9. Jawed

    Legend

    Joined:
    Oct 2, 2004
    Messages:
    10,628
    Location:
    London
    I presume they can't expose an official extension until the extension is entirely supported, hence "preview": a subset of the official extension's features.
     
  10. Dade

    Newcomer

    Joined:
    Dec 20, 2009
    Messages:
    206
    It was possible to set the amount of threads used by OpenCL CPU device in previous SDK by defining the CPU_MAX_COMPUTE_UNITS env. variable.

    May be it is now possible to control this behaviour with an OpenCL extension.
     
  11. Arnold Beckenbauer

    Veteran

    Joined:
    Oct 11, 2006
    Messages:
    1,091
    Location:
    Germany
    Great: No image support for HD4000 series. Well done!
     
  12. fellix

    fellix Hey, You!
    Veteran

    Joined:
    Dec 4, 2004
    Messages:
    3,330
    Location:
    Varna, Bulgaria
    :shock:
     
  13. Dade

    Newcomer

    Joined:
    Dec 20, 2009
    Messages:
    206
    From ATI SDK cl_ext.h:

    Code:
    typedef CL_API_ENTRY cl_int (CL_API_CALL * clCreateSubDevicesEXT_fn)(
        cl_device_id     /* in_device */,
        const cl_device_partition_property_ext * /* partition_properties */,
        cl_uint          /* num_entries */,
        cl_device_id *   /* out_devices */,
        cl_uint *        /* num_devices */);
    
    It looks like you can split an OpenCL in multiple instances.

    This define was interesting:

    /* cl_affinity_domain_ext */
    #define CL_AFFINITY_DOMAIN_NUMA_EXT 0x1
    #define CL_AFFINITY_DOMAIN_L4_CACHE_EXT 0x2
    #define CL_AFFINITY_DOMAIN_L3_CACHE_EXT 0x3
    #define CL_AFFINITY_DOMAIN_L2_CACHE_EXT 0x4
    #define CL_AFFINITY_DOMAIN_L1_CACHE_EXT 0x5
    #define CL_AFFINITY_DOMAIN_NEXT_FISSIONABLE_EXT 0x6

    Are they using OpenCL on some big CPU/NUMA cluster ?
     
  14. fellix

    fellix Hey, You!
    Veteran

    Joined:
    Dec 4, 2004
    Messages:
    3,330
    Location:
    Varna, Bulgaria
    AMD has demoed an internal build of Powder Toy, running parallel across 24 CPU cores in a 4S system while ago, using x86 OCL run-time.
     
  15. Jawed

    Legend

    Joined:
    Oct 2, 2004
    Messages:
    10,628
    Location:
    London
    Note the original post links the wrong documents, e.g. this is the correct version (1.0d, not 1.0c as described on the SDK Documentation page) of the OpenCL Programming Guide:

    http://developer.amd.com/gpu/ATIStreamSDK/assets/ATI_Stream_SDK_OpenCL_Programming_Guide.pdf

    Documentation page:

    http://developer.amd.com/gpu/ATIStreamSDK/pages/Documentation.aspx

    Table A.1 indicates that Fission is not available on any GPU.

    That section of the document also describes the media extensions, including the pack/unpack/SAD stuff.

    Jawed
     
  16. rpg.314

    Veteran

    Joined:
    Jul 21, 2008
    Messages:
    4,294
    Location:
    /
    Where have all the extensions gone? All of them aren't here.
     
  17. Lightman

    Veteran

    Joined:
    Jun 9, 2008
    Messages:
    1,562
    Location:
    Torquay, UK
    Looks like AMD is preparing for FUSION CPU/APU launch!
     
  18. MfA

    MfA
    Legend

    Joined:
    Feb 6, 2002
    Messages:
    5,718
    With those binary OpenCL kernels would it be possible to hack inline assembly now? (Do subroutine calls in OpenCL kernels get compiled to actual CALLs?)
     
  19. Jawed

    Legend

    Joined:
    Oct 2, 2004
    Messages:
    10,628
    Location:
    London
    Usually subroutines are in-lined.

    The ISA has CALL (since R600) with a stack (32 level) and supports jump tables (since Evergreen) of up to 256 elements. Never seen these in ISA code I've looked at, though I haven't tried to generate the latter.
     
  20. MfA

    MfA
    Legend

    Joined:
    Feb 6, 2002
    Messages:
    5,718
    Shame, would make patching a lot easier.
     

Share This Page

Loading...