Page 1 of 5 123 ... LastLast
Results 1 to 10 of 42

Thread: Speeding Up The Linux Kernel With Your GPU

  1. #1
    Join Date
    Jan 2007
    Posts
    13,472

    Default Speeding Up The Linux Kernel With Your GPU

    Phoronix: Speeding Up The Linux Kernel With Your GPU

    Sponsored in part by NVIDIA, at the University of Utah they are exploring speeding up the Linux kernel by using GPU acceleration. Rather than just allowing user-space applications to utilize the immense power offered by modern graphics processors, they are looking to speed up parts of the Linux kernel by running it directly on the GPU...

    http://www.phoronix.com/vr.php?view=OTQxMQ

  2. #2
    Join Date
    Jul 2008
    Location
    Greece
    Posts
    3,766

    Default

    Too bad there are no plans for a CUDA state tracker. In the last two months, I started with some CUDA programming and I must say that it's much nicer to work with compared to OpenCL. From my point of view, OpenCL is the inferior choice.

  3. #3
    Join Date
    Oct 2009
    Location
    .ca
    Posts
    392

    Default

    About time someone started to look into using GPUs as general co-processors/vector units.

  4. #4
    Join Date
    Feb 2008
    Location
    Linuxland
    Posts
    4,752

    Default

    One bug in either Nvidia's drivers or in the cuda code, and what happens to the kernel?

    Hang? Oops?

  5. #5
    Join Date
    Jul 2008
    Location
    Greece
    Posts
    3,766

    Default

    Quote Originally Posted by curaga View Post
    One bug in either Nvidia's drivers or in the cuda code, and what happens to the kernel?

    Hang? Oops?
    Same thing that happens with a bug in the kernel itself.

  6. #6
    Join Date
    Oct 2009
    Posts
    60

    Default

    There aren't that many uses for GPGPU processing inside the kernel besides cryptography. The cards use a separate memory range and the time required to setup a task on the GPU is pretty high. Most kernel calls do not operate on large portions of data, they just pass them around between user-space programs and peripherial devices, so the processing power of a GPU cannot benefit the task. In most cases a task will probably even take longer, because copying the data to the GPU, starting the GPGPU task and copying the data back heavily increases the latency.

    This is the exact same reason why it doesn't currently make sense to use GPGPU computing in most standard applications, like Microsoft Office or a Web Browser: The workloads are so small that a standard CPU can deliver the result faster than a GPU round-trip would take. And most CPUs nowadays have multiple cores anyways. Maybe the situation improves once CPU and GPU are combined into a single devices with a common, flat memory layout, but the GPU is still no good for small workloads.

    Probably that's why they picked file system cryptography, but newer CPUs come with AES accelerators, and currently available AES-NI units already peak out at up to two gigabytes per second. That's enough to saturate multiple S-ATA links, and AES-NI comes with no additional memory copies, setup times etc., while completely freeing the CPU for other tasks.

  7. #7
    Join Date
    Dec 2008
    Location
    Poland
    Posts
    116

    Default

    A better choice would have been OpenCL, which can run on both AMD and NVIDIA GPUs and is an open industry standard.
    Better choice is the one who has means and can do it in affordable amount of time. Why climb on tip of the tree if you can get low hanging fruit without much effort?

  8. #8
    Join Date
    May 2009
    Posts
    29

    Default

    Presumably even if the CUDA option ends up being a bit of a bust, the work on parallelising the kernel could have good payoffs in the non-gpu kernel given the ever increasing core counts of systems.

  9. #9
    Join Date
    Aug 2009
    Posts
    2,264

    Default

    Give me sonething that works like a microkernel and drop me 20.

  10. #10
    Join Date
    Nov 2008
    Posts
    756

    Default

    To utilize GPU power for filesystem decryption, the better choice would be to move the FS to userspace (FUSE) instead of GPU-stuff to the kernel.

    In either case, much care needs to be taken to avoid compromising the key. GPU memory isn't protected much, and leftover memory usually gets assigned to the next task without clearing it first. Do either CUDA or OpenGL make any guarantees there?

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •