PGCL for Sony Xperia U/P?

I was wondering if PGCL supports Xperia P and Xperia U, both of which use U8500?

Hi rahulgarg,

We have only validated PGCL on Snowball boards from Calao Systems running Android Gingerbread. However, the compilers should work on any U8500 system running Gingerbread and it looks Xperia is running Gingerbread. Please give the compilers a try and well do our best to help even though we don’t Xperia here in house.

Best Regards,
Mat

Hello,
i tried to run PGCL on an Xperia Go. But it doesn’t work. Unfortunately the Xperia go runs under android 2.3.7. May be this is the reason why PGCL don’t work? So i tried to put an 2.3.3 Kernel on the Xperia, but i have no success. It’s impossible because there is no Kernel for this device which i can flash. May be you can give me some hints to run GPCL an this device?

Regards
Markus

Hi Markus,

Can you please give us more details on the issues you are having? Xperia Go uses a U8500 and Android 2.3.7 is Gingerbread, both of which are supported. Granted, we haven’t tested on an Xperia, but in theory it should work.

Thanks,
Mat

Hi Mat,
thanks for your answer. yes you are right the processor is an U8500 and the android version is 2.3.7 but it doesn’t work. I simply describe what i
have done. First i connected the mobile to an ubutu combuter via usb. The connection was succesfull. I get a shell via adb. (adb shell)
Then i get root rights on the mobile. I downloaded the pgcl file pbcl_android_12.8.tar.gz and installed it on the ubuntu computer. I tested it with the “pgcl -V” command
and it works. Then i copied the openCL library to the mobile with the command
adb push /opt/pgi/androidarm/12.8/lib/libOpenCL.so /data/pgi/lib
There is a test program in folder /opt/pgi/androidarm/EXAMPLES/Simple1. I created the program via make. Then i tested the program with the command pgrun Simple1 Simple1_Kernel.so. Then
i get the first part of the output

yaacomouser@yaacomoprod1:~/Downloads/androidarm/EXAMPLES/Simple1$ pgrun Simple1 Simple1_Kernel.so
** OpenCL ‘Simple1’ host setup
PGCL binary not supported on execution target.i
Contact your silicon vendor to request support for PGCL.

1 platform available
OpenCL Platform
name : OpenCL 1.1 rev33
vendor: ST-Ericsson
1 device available

Input Matrix
0 1 2 3
1 2 3 4
2 3 4 5
3 4 5 6

Device type is CL_DEVICE_TYPE_CPU
Device type is CL_DEVICE_TYPE_DEFAULT
Device name is Multi-core ARM
Device vendor is ST-Ericsson
CL driver version: 12.8
Number of OpenCL Compute Units is 2
Device Global memory size is 268435456 bytes [256 Mbytes]
Device Local memory size is 16384 bytes [16 Kbytes]
Device supports 3 dimensions
Device supports 256x256 work-groups
Device supports 256 work-items per work-group
Device has frequency of 1000 MHz
Maximum work-group size supported for the kernel: 256
Desired work-group size for this problem: 4

** OpenCL ‘Simple1’ kernel execution

But then nothing happens. The application simply stops. I get no error message or something. I don’t know what i have done wrong.

Could you please help me?

Regards
Markus

PS: If you need more information. Please let me know.

Hi Markus,

I asked our compiler engineers but they’re not sure why not detecting that this is a valid target. Can you please post the output of “/proc/cpuinfo”? This is what we use to determine the target processor.

Thanks,
Mat

Hi Mat,
unfortunately the file /proc/cpuinfo is empty on the device. I have made a ls in the proc folder:

ls -l

dr-xr-xr-x root root 2012-09-11 07:20 uid_stat
–w--w---- root system 0 2012-09-11 07:20 sysrq-trigger
-r–r--r-- root root 0 2012-09-11 07:20 partitions
-r–r--r-- root root 0 2012-09-11 07:20 diskstats
-r–r--r-- root root 0 2012-09-11 07:20 crypto
-r–r--r-- root root 0 2012-09-11 07:20 key-users
-r-------- root root 0 2012-09-11 07:20 kpageflags
-r-------- root root 0 2012-09-11 07:20 kpagecount
-r–r----- root system 0 2012-09-11 07:20 kmsg
-r–r--r-- root root 0 2012-09-11 07:20 softirqs
-r–r--r-- root root 0 2012-09-11 07:20 version
-r–r--r-- root root 0 2012-09-11 07:20 uptime
-r–r--r-- root root 0 2012-09-11 07:20 stat
-r–r--r-- root root 0 2012-09-11 07:20 meminfo
-r–r--r-- root root 0 2012-09-11 07:20 loadavg
-r–r--r-- root root 0 2012-09-11 07:20 interrupts
-r–r--r-- root root 0 2012-09-11 07:20 devices
-r–r--r-- root root 0 2012-09-11 07:20 cpuinfo
-r–r----- root radio 0 2012-09-11 07:20 cmdline
-r–r--r-- root root 0 2012-09-11 07:20 locks
-r–r--r-- root root 0 2012-09-11 07:20 filesystems
-rw-r–r-- root root 0 2012-09-11 07:20 slabinfo
-r–r----- root log 0 2012-09-11 07:20 vmallocinfo
-r–r--r-- root root 0 2012-09-11 07:20 zoneinfo
-r–r--r-- root root 0 2012-09-11 07:20 vmstat
-r–r--r-- root root 0 2012-09-11 07:20 pagetypeinfo

You can see that most of the files in the proc folder are empty.

Regards
Markus

Hi Mat,
i am very sorry but it was a mistake. I testeted it only with vi. In vi the file is empty but if i do cat /proc/cpuinfo i get the following answer.

# cat /proc/cpuinfo
Processor : ARMv7 Processor rev 1 (v7l)
processor : 0
BogoMIPS : 4.80

processor : 1
BogoMIPS : 4.80

Features : swp half thumb fastmult vfp edsp neon vfpv3
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x2
CPU part : 0xc09
CPU revision : 1

Hardware : riogrande
Revision : 0000
Serial : 0000000000000000
#

May be this can help to solve the problem.

Regards
Markus

Hi Markus,

Hardware : riogrande

This is the problem. Looks like Sony uses there own code names for the chip. If we got you a work around, do you mind testing it for us?

Thanks,
Mat

Hi Mat,
I am very happy about that. I will test the work around.

Thank you very much
Markus

Hi Mat,
i have tested the compiler which your PGI Sales Support [sales@pgroup.com] has send me via email today. I think this is the work around. I downloaded it and let it run but still with the same result.

Regards
Markus

Hi Markus,

In looking at what Sales sent you, that was just a form letter letting you know the 12.8 pgcl was available. I’m still waiting for engineering to recode our run time libraries so that it will recognise your device. I’m not sure how long it will take but I will contact you once available.

  • Mat

Hi Mat,
i have tested the libOpenCL that you have send to me. It’s amazing! It works now!
I get now the following result.

** OpenCL ‘Simple1’ host setup
1 platform available
OpenCL Platform
name : OpenCL 1.1 rev33
vendor: ST-Ericsson
1 device available

Input Matrix
0 1 2 3
1 2 3 4
2 3 4 5
3 4 5 6

Device type is CL_DEVICE_TYPE_CPU
Device type is CL_DEVICE_TYPE_DEFAULT
Device name is Multi-core ARM
Device vendor is ST-Ericsson
CL driver version: 12.8
Number of OpenCL Compute Units is 2
Device Global memory size is 268435456 bytes [256 Mbytes]
Device Local memory size is 16384 bytes [16 Kbytes]
Device supports 3 dimensions
Device supports 256x256 work-groups
Device supports 256 work-items per work-group
Device has frequency of 1000 MHz
Maximum work-group size supported for the kernel: 256
Desired work-group size for this problem: 4

** OpenCL ‘Simple1’ kernel execution

** ‘Simple1’ has completed.

Output Matrix
0 0 1 1
0 0 1 1
1 1 2 2
1 1 2 2

TEST PASSES

Thank you so much for your help and support!!

Regards
Markus

hello,

i installed PGCL on ubutnu 12.04 and then i connected my HCL ME tablet to system which is running on android 2.2 , i checked it through adb devices

then i used adb push /opt/pgi/androidarm/12.8/lib/libOpenCL.so /data/pgi/lib command to copy opencl library
then i run the test program in folder /opt/pgi/androidarm/EXAMPLES/Simple1. using command pgrun Simple1 Simple1_Kernel.so

i got following output

** OpenCL ‘Simple1’ host setup
PGCL binary not supported on execution target.i
Contact your silicon vendor to request support for PGCL.

1 platform available
OpenCL Platform
name : OpenCL 1.1 rev33
vendor: ST-Ericsson
1 device available

Input Matrix
0 1 2 3
1 2 3 4
2 3 4 5
3 4 5 6

Device type is CL_DEVICE_TYPE_CPU
Device type is CL_DEVICE_TYPE_DEFAULT
Device name is Multi-core ARM
Device vendor is ST-Ericsson
CL driver version: 12.8
Number of OpenCL Compute Units is 2
Device Global memory size is 268435456 bytes [256 Mbytes]
Device Local memory size is 16384 bytes [16 Kbytes]
Device supports 3 dimensions
Device supports 256x256 work-groups
Device supports 256 work-items per work-group
Device has frequency of 1000 MHz
Maximum work-group size supported for the kernel: 256
Desired work-group size for this problem: 4

** OpenCL ‘Simple1’ kernel execution
it was stopped there

when i run another sample Simple1_dynamic

pgrun Simple1_dynamic
** OpenCL ‘Simple1_dynamic’ host setup
PGCL binary not supported on execution target.i
Contact your silicon vendor to request support for PGCL.

1 platform available
OpenCL Platform
name : OpenCL 1.1 rev33
vendor: ST-Ericsson
1 device available
pgcll_driver: not found
clBuildProgram failed.
Error value = -11


as i followed previous post my cpuinfo is shown below

cat /proc/cpuinfo

Processor : ARMv7 Processor rev 0 (v7l)
processor : 0
BogoMIPS : 1998.84

Features : swp half thumb fastmult vfp edsp vfpv3 vfpv3d16
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x1
CPU part : 0xc09
CPU revision : 0

Hardware : NVIDIA Harmony Development System
Revision : 0000
Serial : 0000000000000000

can anyone suggest the solution for my problem

Hi vsat,

Hardware : NVIDIA Harmony Development System

We currently only support ST-Ericsson U8500 chips.

  • Mat

hi mkcolg,

thank for reply.