AMD Forces a LibreOffice Speed Boost With GPU Acceleration
New submitter samtuke writes: AMD processors get rated and reviewed based on performance. It is in our self-interest to make things work really, really fast on AMD hardware. AMD engineers contribute to LibreOffice, for good reason. Think about what happens behind a spreadsheet calculation. There can be a huge amount of math. Writing software to take advantage of a Graphics Processing Unit (GPU) for general purpose computing is non-trivial. We know how to do it. AMD engineers wrote OpenCL kernels, and contributed them to the open source code base. Turning on the OpenCL option to enable GPU Compute resulted in a 500X+ speedup, about ¼ second vs. 2minutes, 21 seconds. Those measurements specifically come from the ground-water use sample from this set of Libre Office spreadsheets.
Ok, it's fantastic that LibreOffice spreadsheet calculations are faster now. But what good is that when the rest of it is so goddamn bloated? I installed it recently on my brand new Mac and it was like 600 MB or something fucked like that! I mean, come on! And it was so slow, and I don't mean the spreadsheet calculations. The rest of the GUI was just real sluggish. No other apps on my Mac are this slow except Firefox. Maybe these AMD dudes and dudettes can use their GPU and graphics know-how to speed up the fucking slow-as-molasses LibreOffice GUI and once they're done with that they should go to work on Firefox. Jesus Christ, does Firefox need some speed ups! Mozilla hasn't been able to do anything useful in like a decade now, so maybe these AMD dudes and dudettes can wrangle it into something fast.
Is the speed boost forced, or an option?
I wonder if a spreadsheet is really the right tool for computations that take several dozens of seconds on modern hardware, even without GPU acceleration. I am inclined to think it is not.
As someone who has never found a use for spreadsheets anyway, I wonder whether there is anyone who uses LibreOffice spreadsheets? For what is this used, accounting?
Just wondering...
This is good of course, however, whenever I see a spreadsheet program used for any serious computation, I cringe. There are far better tools out there if you require real number crunching. Think Python + Panda for instance, or R, or Matlab if you are really into commercial programs, otherwise a nice interactive web page will usually do the trick. For accounting use a real accounting program, there are plenty out there. Spreadsheet programs are the lowest common denominator that allow the sharing of table-like information, but almost universally they are the wrong tool for the job. Just in the last week, I have seen spreadsheets used for a program logic workflow, a timetable, a university course schedule, to compute an FFT, to exchange student marks, to discuss a budget (with lots of deletions and remarks), and even for a presentation. In each and every case a more suitable, open-source, freely available, multi-platform application exists.
Of course this is software that people know, so usually we have to deal with it. As a rule I accept to work with other people's spreadsheets, but I usually refuse to create one ex-nihilo, unless there is a compelling reason to. For instance I teach a course on optimisation, and I do show how the solver in Excel / {Libre,Open}Office works. I have also on occasion shown people how to use a pivot table (never use those if you can help it).
The most severe problem I see with spreadsheet is that they have their use but they are fragile. It is too easy to load an extensive table into them and inadvertently modify just one cell, potentially undoing a lot of work. This is easy to detect if your spreadsheet is small, but if it span multiple tabs and an ungodly number of rows, you will not detect your error. Of course the format of these spreadsheet is obscure, and version control is typically not supported.
Personally the worst I have seen was one spreadsheet used for the accounting of 90+ separate research projects, spanning 30,000 cells. The accountant in charge of it was the person most attentive to detail I have ever seen. She was careful and the only person using it, which made her indispensable. We put in place a year-long plan for her retirement, involving scrapping her spreadsheet, entirely replacing it with a direct interface with SAP via a php-based web page. It was many months in the making, of course this was not a trivial project but we've pulled it off. In the process we discovered a huge number of accounting errors thanks to it, typically invoices that were never billed, to the tunes of nearly one million dollars. It took us several months to correct them.
The morals of this is never, ever use spreadsheets program for non-trivial work.
AMD engineers have contributed OpenCL code which is an open standard that can run on many different accelerators (some not even GPUs). this is distinctly different from CUDA which only works with Nvidia stuff.
Anons need not reply. Questions end with a question mark.
I just tried the sheets provided. Took about 2-4 seconds for the download and opening it with Word 2013.
Tried it with libre office, the same.
The opening of the file was so fast that i cant make an educated guess how long it took..
(intel i7/SSD/Win 8.1 with fast 100mbit)
Where is the open source version of OneNote? It's the only thing holding me to windows.
When our name is on the back of your car, we're behind you all the way!
here are my answers. Spreadsheets are used in several cases:
1) When you have a small-to-medium-sized dataset (100m data points) and want to do a particular set of calculations or draw a particular set of conclusions from it just once or twice—so that the time invested in writing code in R or something similar is less than the time needed just to bung a few formulas into a spreadsheet and get your results. Once you get into analyses or processes that will be repeated many times, it makes more sense to write code.
2) Similar case, when you need to work with essentially tabular database data, but the operations you're performing (basic filtering, extracting records based on one or two criteria, just handing data from one person to the next) are either so simple or will be repeated so rarely that a MySQL database is overkill and just emailing a file back and forth is easier.
3) When you are working with data as a part of a team, and certain members of the team that are specialists in some areas related to the data, or (for example) members of the team that are doing your data collections, aren't particularly computationally expert. Spreadsheets are hard for laymen, but it's doable—a dozen or two hours of training and people can get a general, flexible grasp of spreadsheets and formulae. It takes a lot longer for someone to become basically proficient with R, MATLAB, MySQL, Python, etc., and you really want those specialists to just be able to do what they do to or with the data, rather than focusing their time and effort on learning computational tools. Spreadsheets are general purpose and have a relatively shallow learning curve relative to lots of other technologies, but they enable fairly sophisticated computation to take place—if inefficiently at times. They're like a lowest-common-denominator of data science.
We use Spreadsheets all the time in what we do, mostly as a transient form. The "heavy hitting" and "production" data takes place largely in MySQL and R, but there are constant temporary/intermediate moments in which data is dumped out as a CSV, touches a bunch of hands that are really not MySQL or R capable, and then is returned in updated form to where in normally lives.
STOP . AMERICA . NOW
100m data points *or less*
STOP . AMERICA . NOW
spreadsheets get used for keeping grocery shopping lists, employee lists, and mangling scientific experiment results through unwanted auto-conversion.
I'm a bit put out by the massive speed-up for computation, though: Seems to me the non-accelerated code path is a bit sub-optimal.
So that's about 20x thanks to the GPU and 25x because the original code clearly blew goat cocks.
GPUs are fast, but they're not 500x as fast.
I may be completely wrong but no features have been added in ages, no code updates etc. etc.
Does anyone know what's going on?
Also, would Base benefit from this GPU enhancement?
*** Don't be dull.***
While the intended workflow for data crunching on the desktop is typically served by R/Python/Julia among others, there are times you have to do some processing for a huge amount of data for a spreadsheet you have open in front of you. This is where AMD/LibreOffice will shine and this is a good motive to buy AMD and LibreOffice.
While we're at it... has the turing-complete-or-not question already been fully answered for spreadsheets?
(my guess would be "no")
The vast majority don't use LO, they use MSO, and they don't call it "Wintel" for nothing. I really don't see MSFT adding this anytime soon, remember they fucked Windows Vista simply because Intel picked up the phone and said "Our shitty 9xx chipsets can't do DX9 and we have a warehouse full to move" which gave us "Vista Capable" so I have zero doubt if MSFT were to start talking up GPU acceleration on MSO Intel would pick up the phone and that would be that.
Of course the fact that they have been adding speed ups to LO since 2013 and it hasn't helped their sales any should be all the proof you need that LO isn't going to influence anybody's hardware choices. Don't get me wrong, I give it out to home users in my standard install, no point spending the $$$ on MSO when LO does the job just fine for the home users.....but the home users will never be doing enough to actually need GPU assistance so other than a "that's neat" factor it really isn't gonna help their bottom line any.
ACs don't waste your time replying, your posts are never seen by me.
Is this opencl cfd you talk about available anywhere? Or is it just some inhouse product? Because I'm willing to throw money at it if it is really that much faster.