article thumbnail

Faster remainders when the divisor is a constant: beating compilers and libdivide

Daniel Lemire

The division by a power of two ( / (2 N )) can be implemented as a right shift if we are working with unsigned integers, which compiles to single instruction: that is possible because the underlying hardware uses a base 2. For this test, I am using an Intel (skylake) processing and GCC 8.1. Then you can use a library like libdivide.

C++ 279
article thumbnail

AWS EC2 Virtualization 2017: Introducing Nitro

Brendan Gregg

Hardware virtualization for cloud computing has come a long way, improving performance using technologies such as VT-x, SR-IOV, VT-d, NVMe, and APICv. The latest AWS hypervisor, Nitro, uses everything to provide a new hardware-assisted hypervisor that is easy to use and has near bare-metal performance. I'd expect between 0.1%

Insiders

Sign Up for our Newsletter

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Trending Sources

article thumbnail

SQL Server I/O Basics Chapter #2

SQL Server According to Bob

As ​​ the ​​ administrator of a SQL Server 2005 installation, ​​ you will find that ​​ visibility into ​​ the ​​ SQL Server ​​ I/O ​​ subsystem ​​ has been ​​ significantly increased.

Servers 40
article thumbnail

SQL 2016 – It Just Runs Faster Announcement

SQL Server According to Bob

My development collogues and I are starting a regular blog series, outlining the vast range of scalability improvements, allowing SQL Server 2016 to run across a wide array of hardware configurations, faster and better than previous releases of SQL Server. Try SQL Server 2016 Today.

article thumbnail

AWS EC2 Virtualization 2017: Introducing Nitro

Brendan Gregg

Hardware virtualization for cloud computing has come a long way, improving performance using technologies such as VT-x, SR-IOV, VT-d, NVMe, and APICv. The latest AWS hypervisor, Nitro, uses everything to provide a new hardware-assisted hypervisor that is easy to use and has near bare-metal performance. I'd expect between 0.1%

article thumbnail

Linux Load Averages: Solving the Mystery

Brendan Gregg

This measures demand, which can be greater than what the system is currently processing. 42/3411 43603. . ## History The original load averages show only CPU demand: the number of processes running plus those waiting to run. The load average is an average of the number of runnable processes over a given time period.

Latency 111
article thumbnail

SQL Server On Linux: Forced Unit Access (Fua) Internals

SQL Server According to Bob

CSA ISO/IEC 9945-1:2005 (R2009) 3.375 Synchronized I/O Data Integrity Completion. Refer to the ISO documentation on file integrity for complete details: CSA ISO/IEC 9945-1:2005 (R2009) 3.376 Synchronized I/O File Integrity Completion. The data storage always uses the multi-step flush process. Fua = Forced Unit Access.

Servers 90