Code Monkey home page Code Monkey logo

Comments (7)

Oblomov avatar Oblomov commented on June 8, 2024

From the error that you get I'm guessing that you are not running this clinfo, but the one shipped with your version of Ubuntu, that has nothing to do with mine.

The clinfo in Ubuntu does not properly supports devices that only support OpenCL 1.1 (e.g. the nvidia ones), and it generally handles errors in a very non-robust way, but there's nothing I can do about it, sorry, it's a different program.

from clinfo.

magnumripper avatar magnumripper commented on June 8, 2024

How would one go about lobbying for this clinfo being used instead? I presume their current one is AMD's? Surely they (be it Debian or Ubuntu) should prefer an open source project.

from clinfo.

bg-rad avatar bg-rad commented on June 8, 2024

Yeah I'm sorry, for some reason I thought that this was the goto program included in the Ubuntu packages. In any case the output using your program is the following:

Platform Name NVIDIA CUDA
Platform Vendor NVIDIA Corporation
Platform Version OpenCL 1.1 CUDA 6.5.45
Platform Profile FULL_PROFILE
Platform Extensions cl_khr_byte_addressable_store cl_khr_icd cl_khr_gl_sharing cl_nv_compiler_options cl_nv_device_attribute_query cl_nv_pragma_unroll cl_nv_copy_opts
Platform Extensions function suffix NV

Platform Name NVIDIA CUDA
Number of devices 1
Device Name GeForce 310
Device Vendor NVIDIA Corporation
Device Vendor ID 0x10de
Device Version OpenCL 1.0 CUDA
Driver Version 340.76
Device OpenCL C Version OpenCL C 1.1
Device Type GPU
Device Profile FULL_PROFILE
Device Topology (NV) PCI-E, 01:00.0
Max compute units 2
Max clock frequency 1402MHz
Compute Capability (NV) 1.2
Max work item dimensions 3
Max work item sizes 512x512x64
Max work group size 512
Preferred work group size multiple 32
Warp size (NV) 32
Preferred / native vector sizes
char 1 / 1
short 1 / 1
int 1 / 1
long 1 / 1
half 0 / 0 (n/a)
float 1 / 1
double 0 / 0 (n/a)
Half-precision Floating-point support (n/a)
Single-precision Floating-point support (core)
Denormals No
Infinity and NANs Yes
Round to nearest Yes
Round to zero Yes
Round to infinity Yes
IEEE754-2008 fused multiply-add Yes
Support is emulated in software No
Correctly-rounded divide and sqrt operations No
Double-precision Floating-point support (n/a)
Address bits 32, Little-Endian
Global memory size 536084480 (511.2MiB)
Error Correction support No
Max memory allocation 134217728 (128MiB)
Unified memory for Host and Device No
Integrated memory (NV) No
Minimum alignment for any data type 128 bytes
Alignment of base address 2048 bits (256 bytes)
Global Memory cache type None
Image support Yes
Max number of samplers per kernel 16
Max 2D image size 4096x16383 pixels
Max 3D image size 2048x2048x2048 pixels
Max number of read image args 128
Max number of write image args 8
Local memory type Local
Local memory size 16383 (16KiB)
Registers per block (NV) 16384
Max constant buffer size 65536 (64KiB)
Max number of constant args 9
Max size of kernel argument 4352 (4.25KiB)
Queue properties
Out-of-order execution Yes
Profiling Yes
Profiling timer resolution 1000ns
Execution capabilities
Run OpenCL kernels Yes
Run native kernels No
Kernel execution timeout (NV) Yes
Concurrent copy and kernel execution (NV) Yes
Number of async copy engines 1
Device Available Yes
Compiler Available Yes
Device Extensions cl_khr_byte_addressable_store cl_khr_icd cl_khr_gl_sharing cl_nv_compiler_options cl_nv_device_attribute_query cl_nv_pragma_unroll cl_nv_copy_opts cl_khr_global_int32_base_atomics cl_khr_global_int32_extended_atomics cl_khr_local_int32_base_atomics cl_khr_local_int32_extended_atomics

NULL platform behavior
clGetPlatformInfo(NULL, CL_PLATFORM_NAME, ...) NVIDIA CUDA
clGetDeviceIDs(NULL, CL_DEVICE_TYPE_ALL, ...) Success [NV]
clCreateContext(NULL, ...) [default] Success [NV]
clCreateContextFromType(NULL, CL_DEVICE_TYPE_CPU) No devices found in platform
clCreateContextFromType(NULL, CL_DEVICE_TYPE_GPU) No platform
clCreateContextFromType(NULL, CL_DEVICE_TYPE_ACCELERATOR) No devices found in platform
clCreateContextFromType(NULL, CL_DEVICE_TYPE_CUSTOM) No devices found in platform
clCreateContextFromType(NULL, CL_DEVICE_TYPE_ALL) No platform

ICD loader properties
ICD loader Name OpenCL ICD Loader
ICD loader Vendor OCL Icd free software
ICD loader Version 2.1.3
ICD loader Profile OpenCL 1.2

The main part which bothers me being:

clCreateContextFromType(NULL, CL_DEVICE_TYPE_CPU) No devices found in platform
clCreateContextFromType(NULL, CL_DEVICE_TYPE_GPU) No platform
clCreateContextFromType(NULL, CL_DEVICE_TYPE_ACCELERATOR) No devices found in platform
clCreateContextFromType(NULL, CL_DEVICE_TYPE_CUSTOM) No devices found in platform
clCreateContextFromType(NULL, CL_DEVICE_TYPE_ALL) No platform

do you by any chance know what could be wrong as to why it does not detect any devices/platforms ?

from clinfo.

Oblomov avatar Oblomov commented on June 8, 2024

@magnumripper : the clinfo used in Debian/Ubuntu until now was developed by SImon RIchter. My understanding is that it will be replaced by mine, but I'm not sure about the timeline (I've been busy with other stuff and I have to refresh my contacts with the Debian OpenCL Maintainers).

@bg-rad : it does find platforms and devices (the NVIDIA one), otherwise you wouldn't see that huge listing. The part you are worried about is the fact that specifying NULL as platform will not actually pick a platform. This depends on the OpenCL ICD loader used, and it just means that a platform has to be specifically chosen by the application, nothing else and nothing to worry about.

from clinfo.

UniqueFool avatar UniqueFool commented on June 8, 2024

Just for your info, I can confirm that your clinfo code works properly on Ubuntu, while the stock version would trigger all sorts of errors/segfaults, especially with multiple ICDs installed (nvidia, intel and AMD here), so it is good to see a piece of software that is apparently tested with all those use cases in mind.

Thanks for working on this, and best of luck to you for getting it included in Ubuntu !!

from clinfo.

Oblomov avatar Oblomov commented on June 8, 2024

Thanks @UniqueFool โ€”Debian has already adopted it for the next release, so Ubuntu will probably follow suite 8-)

from clinfo.

UniqueFool avatar UniqueFool commented on June 8, 2024

Given that there are at least ~15 different clinfo projects just on github, I would strongly suggest to add your nickname to the version string, to ensure that people can tell that they are running your version of clinfo - maybe even adding a link to the github project would be a good idea ?

from clinfo.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.