cancel
Showing results for 
Search instead for 
Did you mean: 

Archives Discussions

set
Adept I

clEnqueueReadBufferRect/clEnqueueWriteBufferRect are broken in 14.12 driver

clEnqueueReadBufferRect/clEnqueueWriteBufferRect worked with no problems in 14.9 and 14.4, but now in 14.12 they are completely broken on HD6950 / Win7 x64.

Can anyone else confirm this?

Even trivial code (with inline arrays pseudocode)


clEnqueueWriteBufferRect(queue, cl_buf, CL_FALSE, {0, 0, 0}, {0, 0, 0}, {width, height, 1}, width, 0, width, 0, src, 0, NULL, NULL);


clEnqueueReadBuffer(queue, cl_buf, CL_TRUE, 0, width*height, dst, 0, NULL, NULL);


doesn't work anymore. Replacing first line with plain write works fine:


clEnqueueWriteBuffer(queue, cl_buf, CL_FALSE, 0, width*height, src, 0, NULL, NULL);


0 Likes
5 Replies
dipak
Staff

Thanks for reporting this. We'll check and get back to you.

0 Likes
dipak
Staff

Hi,

I guess this is same as clEnqueueWriteBufferRect does not work when region width is not equal to src pitch: broken again in ....  I'm able to reproduce the issue on HD 6970 (cayman XT) with latest Omega driver (windows 7 64bit) by using the same sample code given on that post. I've shared my observation there. Please check and let us know your finding.

Regards,

natasha
Elite

The Linux 14.12 version of the driver is also broken in this relation.

These two functions don't work properly on the active card.

# lsb_release -idrc && uname -r

Distributor ID: SUSE LINUX

Description:    openSUSE 12.2 (x86_64)

Release:        12.2

Codename:      Mantis

3.4.63-2.44-desktop

# aticonfig --list-adapters

* 0. 01:00.0 AMD Radeon HD 7900 Series

  1. 02:00.0 AMD Radeon HD 5800 Series

* - Default adapter

With kernel performing copying data from input to output arrays obtain wrong result with clEnqueueWrite/ReadBufferRect functions on the primary card:

:::::::::::::::::::::::::::::::::::::::::::::::::::::

Platform: AMD Accelerated Parallel Processing

Device: Tahiti (GPU)    Driver: 1642.5 (VM)

:::::::::::::::::::::::::::::::::::::::::::::::::::::

         Input           Output

[0]      0.000000        0.000000

[1]      0.841471        0.909297

[2]      0.909297       -0.756802

[3]      0.141120       -0.279415

[4]     -0.756802        0.989358

[5]     -0.958924       -0.544021

[6]     -0.279415       -0.536573

[7]      0.656987        0.990607

[8]      0.989358        0.000000

[9]      0.412118        0.000000

[10]    -0.544021        0.000000

[11]    -0.999990        0.000000

[12]    -0.536573        0.000000

[13]     0.420167        0.000000

[14]     0.990607        0.000000

[15]     0.650288        0.000000

[16]    -0.287903        0.000000

[17]    -0.961397        0.912945

[18]    -0.750987        0.836656

[19]     0.149877       -0.008851

[20]     0.912945       -0.846220

[21]     0.836656       -0.905578

[22]    -0.008851       -0.132352

[23]    -0.846220        0.762558

[24]    -0.905578        0.956376

[25]    -0.132352        0.270906

[26]     0.762558       -0.663634

[27]     0.956376       -0.988032

[28]     0.270906       -0.404038

[29]    -0.663634        0.551427

[30]    -0.988032        0.999912

[31]    -0.404038        0.000000

:::::::::::::::::::::::::::::::::::::::::::::::::::::

Platform: AMD Accelerated Parallel Processing

Device: Cypress (GPU)   Driver: 1642.5

:::::::::::::::::::::::::::::::::::::::::::::::::::::

         Input           Output

[0]      0.000000        0.000000

[1]      0.841471        0.841471

[2]      0.909297        0.909297

[3]      0.141120        0.141120

[4]     -0.756802       -0.756802

[5]     -0.958924       -0.958924

[6]     -0.279415       -0.279415

[7]      0.656987        0.656987

[8]      0.989358        0.989358

[9]      0.412118        0.412118

[10]    -0.544021       -0.544021

[11]    -0.999990       -0.999990

[12]    -0.536573       -0.536573

[13]     0.420167        0.420167

[14]     0.990607        0.990607

[15]     0.650288        0.650288

[16]    -0.287903       -0.287903

[17]    -0.961397       -0.961397

[18]    -0.750987       -0.750987

[19]     0.149877        0.149877

[20]     0.912945        0.912945

[21]     0.836656        0.836656

[22]    -0.008851       -0.008851

[23]    -0.846220       -0.846220

[24]    -0.905578       -0.905578

[25]    -0.132352       -0.132352

[26]     0.762558        0.762558

[27]     0.956376        0.956376

[28]     0.270906        0.270906

[29]    -0.663634       -0.663634

[30]    -0.988032       -0.988032

[31]    -0.404038       -0.404038

whereas with the 14.9 driver all is ok:

:::::::::::::::::::::::::::::::::::::::::::::::::::::

Platform: AMD Accelerated Parallel Processing

Device: Tahiti (GPU)    Driver: 1573.4 (VM)

:::::::::::::::::::::::::::::::::::::::::::::::::::::

         Input           Output

[0]      0.000000        0.000000

[1]      0.841471        0.841471

[2]      0.909297        0.909297

[3]      0.141120        0.141120

[4]     -0.756802       -0.756802

[5]     -0.958924       -0.958924

[6]     -0.279415       -0.279415

[7]      0.656987        0.656987

[8]      0.989358        0.989358

[9]      0.412118        0.412118

[10]    -0.544021       -0.544021

[11]    -0.999990       -0.999990

[12]    -0.536573       -0.536573

[13]     0.420167        0.420167

[14]     0.990607        0.990607

[15]     0.650288        0.650288

[16]    -0.287903       -0.287903

[17]    -0.961397       -0.961397

[18]    -0.750987       -0.750987

[19]     0.149877        0.149877

[20]     0.912945        0.912945

[21]     0.836656        0.836656

[22]    -0.008851       -0.008851

[23]    -0.846220       -0.846220

[24]    -0.905578       -0.905578

[25]    -0.132352       -0.132352

[26]     0.762558        0.762558

[27]     0.956376        0.956376

[28]     0.270906        0.270906

[29]    -0.663634       -0.663634

[30]    -0.988032       -0.988032

[31]    -0.404038       -0.404038

The clEnqueueWriteBufferRect doesn't react on the  buffer_row_pitch parameter, whereas clEnqueueWriteBufferRect does something, but not what it must do.

Regards, Natalia

0 Likes

Hi Natalia,

Thanks for reporting this.

I already filed an bug report against a similar issue (please see  clEnqueueWriteBufferRect does not work when region width is not equal to src pitch: broken again in .... ) and our engg. team is working on it. If I get any update, I'll share with you.

Regards,

0 Likes

Thank you, Dipak.

0 Likes