![]() We use almost no CPU cycles on calculation itself. The vast majority of the time in HPC is in load and store operations. Matrix transpositions are stinking expensive and I've never been convinced it's entirely necessary to keep everything aligned. Though maybe they could use the same logic to optimize a proper matrix multiply operation instead. They solution they came up with actually would not be parallelizable. up to 16 times faster than the benchmark they're using. A well written SIMD multiple, especially one employing CPU multiply and accumulate instructions which can multiple and accumulate up to 16 parallel registers in a single operation. ![]() The solution provides would save approximately 4% of computation clock cycles but not memory read or store.Īlso, due to SIMD instructions, the saves aren't actually 4% because scatter gather takes space and SIMD operations don't like working in columns of registers only rows (or other way around depending on your perspective).Ī SIMD multiple poorly written uses 1/4 the clock cycles of the operation they're competing with. In many other cases, AlphaTensor rediscovered the best existing algorithm." "It reduced the number of steps needed to multiply two nine-by-nine matrices from 511 to 498, and the number required for multiplying two 11-by-11 matrices from 919 to 896. "Overall, AlphaTensor beat the best existing algorithms for more than 70 different sizes of matrix," concludes the report. AlphaTensor found a way to do it in 47 steps. The basic high school method takes 64 steps Strassen's takes 49 steps. The headline result is that AlphaTensor discovered a way to multiply together two four-by-four matrices that is faster than a method devised in 1969 by the German mathematician Volker Strassen, which nobody had been able to improve on since. The researchers describe their work in a paper published in Nature today. It was rewarded for winning the game in as few moves as possible. Instead of learning the best series of moves to make in Go or chess, AlphaTensor learned the best series of steps to make when multiplying matrices. The researchers trained a new version of AlphaZero, called AlphaTensor, to play this game. The series of moves made in a game therefore represents an algorithm. The board represents the multiplication problem to be solved, and each move represents the next step in solving that problem. The trick was to turn the problem into a kind of three-dimensional board game, called TensorGame. This is because there are more ways to multiply two matrices together than there are atoms in the universe (10 to the power of 33, for some of the cases the researchers looked at). But things get complicated when you try to find a faster method. The basic technique for solving the problem is taught in high school. Multiplying two matrices together typically involves multiplying the rows of one with the columns of the other. A matrix is simply a grid of numbers, representing anything you want. Speeding up this calculation could have a big impact on thousands of everyday computer tasks, cutting costs and saving energy.ĭespite the calculation's ubiquity, it is still not well understood. It is also fundamental to machine learning itself. The problem, matrix multiplication, is a crucial type of calculation at the heart of many different applications, from displaying images on a screen to simulating complex physics. A year after it took biologists by surprise, AlphaFold has changed how researchers work and set DeepMind on a new course. An anonymous reader quotes a report from MIT Technology Review: DeepMind has used its board-game playing AI AlphaZero to discover a faster way to solve a fundamental math problem in computer science, beating a record that has stood for more than 50 years.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |