IBM Files Patent For GPU-Accelerated Databases
IBM has an idea how database access and data processing can be accelerated. IBM wants to take advantage of graphics processors to launch and execute database queries.
Instead of traditional disk-based queries and an approach that slows performance via memory latencies and processors waiting for data to be fetched from the memory, IBM envisions in-GPU-memory tables as technology that could, in addition to disk tables, significantly accelerate database processing. According to a patent filed by the company, "GPU enabled programs are well suited to problems that involve data-parallel computations where the same program is executed on different data with high arithmetic intensity."
Surprisingly, the patent does describe open high-level software architectures, such as OpenCL, in this patent filing, but mentions Nvidia's Compute Unified Device Architecture (CUDA) as only specific example to run GPU-accelerated databases: "CUDA toolkit exposes the underlying target hardware via a C-like API. CUDA is designed to increase performance in many data parallel applications by supporting execution of thousands of threads in parallel. As such, a compiled CUDA program may scale with the advances in hardware. There are at least two ways a GPU-enabled database may be implemented--a) in one embodiment, a full-fledged database system may be enabled, and b) a scratch pad for accelerating other database queries may be enabled, that is, a GPU-memory database for just executing database queries may be enabled."
However, IBM is not surprisingly trying to protect its patent, if granted, in other programming languages as in the key areas of:
- starting a GPU kernel
- hash partitioning the database relations by the GPU kernel
- loading the partitioned database relations into the GPU memory
- loading keyed partitions corresponding the hash partitioned database relations into the GPU memory
- building a hash table for a smaller of the hash partitioned database relations
- executing the query.
According to the patent applications, using GPU acceleration for databases "may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, Smalltalk, C++ or the like and conventional procedural programming languages, such as the "C" programming language or similar programming languages." To cover all of its bases, IBM also states that the "program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server."
- U.S. Web-Blocking Devices Used By Syrian Government
- ARM Preps Entry In 64-bit Server Market
- Asus: Transformer Prime Will Launch with Honeycomb
- AMD's Bulldozer Pushed to 8.46 GHz, Breaks Own Record
- HP TouchPad's History: Lessons Learned, Bidding Adieu
- Blizzard: F2P (Still) Not the Best Model for WoW
- Intel Releases SSD Toolbox 3.0 Software
- HP Dubs Reports of WebOS Shutdown 'Unfounded Rumors'
- AMD Releases 11.10 Drivers With Official 5x1 Support
- AMD Announces the Affordable FirePro V4900
- Researchers Create First Efficient Flexible Plastic OLED
- Seagate to Drop Barracuda XT, Green HDD Line
- Hands-On With Diablo III Arena PvP
- Lawyer: Software Can Be Patented Even Without Code
- Windows 7 Passes XP, Now Most Popular OS in the World
- More X79 Motherboards Revealed by Manufacturers
- Patent Filing Reveals Nvidia May Build Tiny Computers
- HP PC CTO Phil McKinney Soon Calling it Quits








i love IBM.
i love IBM.
same
interesting and maybe even very useful considering a GPUs power, but did they develop it yet? You should not be able to patent it without a product. That is what is wrong with the system. If I patented slim, I could sue thousands of anorexics. Oh wait, apple has that one.
me too
even more after reading the book IBM and the holocaust.
Ermmm... that's how normal software works when ran on GPU.
interesting and maybe even very useful considering a GPUs power, but did they develop it yet? You should not be able to patent it without a product. That is what is wrong with the system. If I patented slim, I could sue thousands of anorexics. Oh wait, apple has that one.
did they pattent a process
So, it relies on having a table already in GPU memory, that is small enough to fit into same GPU memory? Furthermore, have they figured out a way to make GPUs useful for that? Current GPUs are basically good at floating point calculations that are easily parallelized, not integer/logic operations. SQL is almost entirely integer/logic unless your query/insert contains an FP math equation, which probably isn't often.
Barring the wrong tool for the job argument, it could work OK as long as you're entire database fits in one GPUs memory, or else you can at least fit one table per GPU, and you only have to query a single table at a time.
They've been promising GPU based processing for five years at least, so far it hasn't made an impact anywhere. 3ds max uses it in a very limited way as does Photoshop.
Had to get the patent thing done right first, or some one would sue.
Killerclick: The number one thing holding it back is that it requires copying from main memory to the GPUs memory. Even things that can be made that parallel must still overcome the huge latency in copying it back and forth. That's why AMD Llano and all APUs going forward share memory with the CPU, and have direct links to the cores, to make GPGPU more feasible for the calculations that can benefit from it.
I BM ROCKS
Great for a couple of small DB's but after that you will tax it too much, Why?
Unless you have a dedicated GPU unit on the same bus as the main processor to access main ram, you still have to go thru the main cpu, thru the main bus(PCI-E), into the gpu, back out into the main bus, back thru the cpu and out onto main RAM or Storage.....
The End.
me tooeven more after reading the book IBM and the holocaust.
Yeah, I just learned about what the Nazis used their machines for too.
Sounds similar to concepts used by the System/38 and AS/400 from 1978 onward.
They should have said all programming languages except for Objective-C.
The picture is sure for the not to savy
Great for a couple of small DB's but after that you will tax it too much, Why?
QUOTE:
Unless you have a dedicated GPU unit on the same bus as the main processor to access main ram, you still have to go thru the main cpu, thru the main bus(PCI-E), into the gpu, back out into the main bus, back thru the cpu and out onto main RAM or Storage.....
Since the days of AGP(maybe earlier) Memory transfers to the videocard do not have to go through the CPU. Windows allocates a set area of ram for the Videocard to have direct access to. It is assigne a DMA (direct memory access) the same as a hard drive.
So the video card can read or write to memory directly, reguardless of what the cpu is doing.
if they dont patent it, apple will. At least they have a diagram, apple patents ideas which they cant explain how it is going to work.
Except anyone who has ever played with CUDA already made extensions for pretty much every open source databases and they do precisely that.
Except anyone who has ever played with CUDA already made extensions for pretty much every open source databases and they do precisely that.
Which makes me go how? There needs to be more scrutiny in the patent process.
Search on gpgpu.org and you'll find papers about running DB queries on GPUs dating back to 2004. The subject was even covered in a SIGGRAPH 2005 course on GPGPU.
What I wonder is how much of their patent is even specific to GPUs. Like how does it materially differ from query processing on other parallel architectures. Could you just substitute SMP or NUMA for GPU and find a dozen other patents like it?
IBM patents _a_lot_ of stuff. They might even believe they invented some of it.
Hell, this patent should not be approve, why do any one need to pay license to use any processing unit (in this case from GPU) to do anything :|
Great for a couple of small DB's but after that you will tax it too much, Why? Unless you have a dedicated GPU unit on the same bus as the main processor to access main ram, you still have to go thru the main cpu, thru the main bus(PCI-E), into the gpu, back out into the main bus, back thru the cpu and out onto main RAM or Storage.....The End.
Yes the article seems to be assuming that accessing databases is mathematically bottlenecked instead of I/O bottlenecked.
If this is true, then it might make for a good GPU application.
The onboard RAM on GPUs can greatly reduce I/O, especially if most of the index can fit in the RAM. So then PCI-Express usage would be reduced and the latency therein would be less of an issue.
me tooeven more after reading the book IBM and the holocaust.
Do you like Christianity?
You realise the Pope during WW2 was a Nazi sympathiser.
http://en.wikipedia.org/wiki/Hitler's_Pope
If you are going to demonise an organisation fro activities nearly 70 years ago you have to do the same for every other organisation too.
Level playing field, that's how it works.
By the way:-
That's because IBM is not Apple and will be happy for this to proliferate and help everyone.
Can I patent "program that makes bazinga! on GPU in any language"?
Or "program that counts something on GPU in any language"?
I should take a few years in computer programming, and business. Then I could make all my money just making patents of things I know people will invent one day.
I am going to patent the phrase "Hello World" so that I can sue the makers of every program that is ever written.
Seriously, the idea of using GPU acceleration for any particular purpose should not be patentable. If it is, companies are just going to carve up the market in a race to patent a GPU version of everything that already exists.
The SQLite database has already been accelerated with CUDA. IBM are not the first to do something like this.
Article "Accelerating SQL Database Operations on a GPU with CUDA" (2010) http://www.cs.virginia.edu/~skadro [...] pgpu10.pdf
[ Begging for helps ] Complaint about Human Rights Violations by IBM China on Centennial
Please Google:
Tragedy of Labor Rights Repression in IBM China
or
How Much IBM Can Get Away with is the Responsibility of the Media
or
IBM detained mother of ex-employee on the day of centennial
I do not see a point of patenting a general description of data processing on GPU which what IBM is trying to do.
The is plenty of prior work dating at least 10 years back. There are some current implementations of SQL on GPUs like this one - https://sourceforge.net/projects/alenka/files/
Unlike IBM's vaporware it is open source and real although not ready for production.
Oh, this has not been patented yet? Should have submitted a patent myself