Large matrix multiplication 
Multiply two square matrices as fast as possible.
Input
Two 2000 x 2000 matrices of uint32 values on STDIN, encoded back-to-back in row-major order, little-endian byte order.
Output
Write the resulting 2000 x 2000 product matrix to STDOUT in the same binary format (row-major, little-endian uint32).
Restrictions:60s256Mb 1 Score Packages
CPU Information
| Model | Intel(R) Xeon(R) CPU E3-1271 v3 @ 3.60GHz |
| Cores | 1 |
Extensions
fpuvmedepsetscmsrpaemcecx8apicsepmtrrpgemcacmovpatpse36clflushdtsacpimmxfxsrssesse2sshttmpbesyscallnxpdpe1gbrdtscplmconstant_tscarch_perfmonpebsbtsrep_goodnoplxtopologynonstop_tsccpuidaperfmperfpnipclmulqdqdtes64monitords_cplsmxesttm2ssse3sdbgfmacx16xtprpdcmpcidsse4_1sse4_2x2apicmovbepopcnttsc_deadline_timeraesxsaveavxf16crdrandlahf_lmabmcpuid_faultepbptissbdibrsibpbstibpfsgsbasetsc_adjustbmi1avx2smepbmi2ermsinvpcidxsaveoptdthermaratplnptsmd_clearflush_l1dibpb_exit_to_user
Installed Packages
Feel free to create an issue if you need an extra library from the standard Ubuntu repository.
| Name | Version | Description |
|---|---|---|
| libc6-dev | 2.39-0ubuntu8.7 | GNU C Library: Development Libraries and Header Files Contains the symlinks, headers, and object files needed to compile and link programs which use the standard C library. |
| libclang-common-14-dev | 1:14.0.6-19build4 | Clang library - Common development package Clang project is a C, C++, Objective C and Objective C++ front-end based on the LLVM compiler. Its goal is to offer a replacement to the GNU Compiler Collection (GCC). . Clang implements all of the ISO C++ 1998, 11, 14 and 17 standards and also provides most of the support of C++20. . This package contains the Clang generic headers. |
| libclang-common-15-dev | 1:15.0.7-14build3 | Clang library - Common development package Clang project is a C, C++, Objective C and Objective C++ front-end based on the LLVM compiler. Its goal is to offer a replacement to the GNU Compiler Collection (GCC). . Clang implements all of the ISO C++ 1998, 11, 14 and 17 standards and also provides most of the support of C++20. . This package contains the Clang generic headers. |
| libclang-common-16-dev | 1:16.0.6-23ubuntu4 | Clang library - Common development package Clang project is a C, C++, Objective C and Objective C++ front-end based on the LLVM compiler. Its goal is to offer a replacement to the GNU Compiler Collection (GCC). . Clang implements all of the ISO C++ 1998, 11, 14 and 17 standards and also provides most of the support of C++20. . This package contains the Clang generic headers. |
| libclang-common-17-dev | 1:17.0.6-9ubuntu1 | Clang library - Common development package Clang project is a C, C++, Objective C and Objective C++ front-end based on the LLVM compiler. Its goal is to offer a replacement to the GNU Compiler Collection (GCC). . Clang implements all of the ISO C++ 1998, 11, 14 and 17 standards and also provides most of the support of C++20. . This package contains the Clang generic headers. |
| libclang-common-18-dev | 1:18.1.3-1ubuntu1 | Clang library - Common development package Clang project is a C, C++, Objective C and Objective C++ front-end based on the LLVM compiler. Its goal is to offer a replacement to the GNU Compiler Collection (GCC). . Clang implements all of the ISO C++ 1998, 11, 14 and 17 standards and also provides most of the support of C++20. . This package contains the Clang generic headers. |
| libclang-common-19-dev | 1:19.1.1-1ubuntu1~24.04.2 | Clang library - Common development package Clang project is a C, C++, Objective C and Objective C++ front-end based on the LLVM compiler. Its goal is to offer a replacement to the GNU Compiler Collection (GCC). . Clang implements all of the ISO C++ 1998, 11, 14 and 17 standards and also provides most of the support of C++20. . This package contains the Clang generic headers. |
| libclang-common-20-dev | 1:20.1.2-0ubuntu1~24.04.2 | Clang library - Common development package Clang project is a C, C++, Objective C and Objective C++ front-end based on the LLVM compiler. Its goal is to offer a replacement to the GNU Compiler Collection (GCC). . Clang implements all of the ISO C++ 1998, 11, 14 and 17 standards and also provides most of the support of C++20. . This package contains the Clang generic headers. |
| libcrypt-dev | 1:4.4.36-4build1 | libcrypt development files This package contains the files needed for developing applications that use libcrypt. |
| libgcc-10-dev | 10.5.0-4ubuntu2.1 | GCC support library (development files) This package contains the headers and static library files necessary for building C programs which use libgcc, libgomp, libquadmath, libssp or libitm. |
| libgcc-11-dev | 11.5.0-1ubuntu1~24.04.1 | GCC support library (development files) This package contains the headers and static library files necessary for building C programs which use libgcc, libgomp, libquadmath, libssp or libitm. |
| libgcc-12-dev | 12.4.0-2ubuntu1~24.04.1 | GCC support library (development files) This package contains the headers and static library files necessary for building C programs which use libgcc, libgomp, libquadmath, libssp or libitm. |
| libgcc-13-dev | 13.3.0-6ubuntu2~24.04.1 | GCC support library (development files) This package contains the headers and static library files necessary for building C programs which use libgcc, libgomp, libquadmath, libssp or libitm. |
| libgcc-14-dev | 14.2.0-4ubuntu2~24.04.1 | GCC support library (development files) This package contains the headers and static library files necessary for building C programs which use libgcc, libgomp, libquadmath, libssp or libitm. |
| libobjc-13-dev | 13.3.0-6ubuntu2~24.04.1 | Runtime library for GNU Objective-C applications (development files) This package contains the headers and static library files needed to build GNU ObjC applications. |
| libssl-dev | 3.0.13-0ubuntu3.9 | Secure Sockets Layer toolkit - development files This package is part of the OpenSSL project's implementation of the SSL and TLS cryptographic protocols for secure communication over the Internet. . It contains development libraries, header files, and manpages for libssl and libcrypto. |
| libstdc++-10-dev | 10.5.0-4ubuntu2.1 | GNU Standard C++ Library v3 (development files) This package contains the headers and static library files necessary for building C++ programs which use libstdc++. . libstdc++-v3 is a complete rewrite from the previous libstdc++-v2, which was included up to g++-2.95. The first version of libstdc++-v3 appeared in g++-3.0. |
| libstdc++-11-dev | 11.5.0-1ubuntu1~24.04.1 | GNU Standard C++ Library v3 (development files) This package contains the headers and static library files necessary for building C++ programs which use libstdc++. . libstdc++-v3 is a complete rewrite from the previous libstdc++-v2, which was included up to g++-2.95. The first version of libstdc++-v3 appeared in g++-3.0. |
| libstdc++-12-dev | 12.4.0-2ubuntu1~24.04.1 | GNU Standard C++ Library v3 (development files) This package contains the headers and static library files necessary for building C++ programs which use libstdc++. . libstdc++-v3 is a complete rewrite from the previous libstdc++-v2, which was included up to g++-2.95. The first version of libstdc++-v3 appeared in g++-3.0. |
| libstdc++-13-dev | 13.3.0-6ubuntu2~24.04.1 | GNU Standard C++ Library v3 (development files) This package contains the headers and static library files necessary for building C++ programs which use libstdc++. . libstdc++-v3 is a complete rewrite from the previous libstdc++-v2, which was included up to g++-2.95. The first version of libstdc++-v3 appeared in g++-3.0. |
| libstdc++-14-dev | 14.2.0-4ubuntu2~24.04.1 | GNU Standard C++ Library v3 (development files) This package contains the headers and static library files necessary for building C++ programs which use libstdc++. . libstdc++-v3 is a complete rewrite from the previous libstdc++-v2, which was included up to g++-2.95. The first version of libstdc++-v3 appeared in g++-3.0. |
| libtbb-dev | 2021.11.0-2ubuntu2 | parallelism library for C++ - development files TBB is a library that helps you leverage multi-core processor performance without having to be a threading expert. It represents a higher-level, task-based parallelism that abstracts platform details and threading mechanism for performance and scalability. . (Note: if you are a user of the i386 architecture, i.e., 32-bit Intel or compatible hardware, this package only supports Pentium4-compatible and higher processors.) . This package includes the TBB development files. |
Source Code
Source code access is restricted. Log in to request access.
Challenge History
No challenges yet.
Run Statistics
| # | Date | Score | Wall Time | CPU User | CPU System | Memory | Error | |
|---|---|---|---|---|---|---|---|---|
| 1 | Apr 19, 2024 23:48 | 7,509 | 2,388,584,053 | 1,126,399,628 | 0 | 16,195,584 | ||
| 2 | Apr 19, 2024 23:48 | 7,550 | 2,375,461,024 | 1,132,453,088 | 0 | 16,207,872 | ||
| 3 | Apr 19, 2024 23:48 | 7,835 | 2,428,418,742 | 1,175,265,703 | 0 | 16,228,352 |