Deutsch   English   Français   Italiano  
<Cache-20240726173402@ram.dialup.fu-berlin.de>

View for Bookmarking (what is this?)
Look up another Usenet article

Path: ...!weretis.net!feeder8.news.weretis.net!fu-berlin.de!uni-berlin.de!not-for-mail
From: ram@zedat.fu-berlin.de (Stefan Ram)
Newsgroups: comp.misc
Subject: Re: strlcpy and how CPUs can defy common sense
Date: 26 Jul 2024 16:34:25 GMT
Organization: Stefan Ram
Lines: 26
Expires: 1 Jul 2025 11:59:58 GMT
Message-ID: <Cache-20240726173402@ram.dialup.fu-berlin.de>
References: <slrnva7gg6.39g.bencollver@svadhyaya.localdomain> <strings-20240726170151@ram.dialup.fu-berlin.de>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Trace: news.uni-berlin.de 67mVfpzbUTEc/GX++tP25AYQnAu5KepuI3StACVAh78TS4
Cancel-Lock: sha1:vFoeYw/7JeZWMAhLdbKmhtRQ74U= sha256:0Sa+TJXAeqyxSpJqkcJjTlrqSzUTQo6OwhoN/l7FwJc=
X-Copyright: (C) Copyright 2024 Stefan Ram. All rights reserved.
	Distribution through any means other than regular usenet
	channels is forbidden. It is forbidden to publish this
	article in the Web, to change URIs of this article into links,
        and to transfer the body without this notice, but quotations
        of parts in other Usenet posts are allowed.
X-No-Archive: Yes
Archive: no
X-No-Archive-Readme: "X-No-Archive" is set, because this prevents some
	services to mirror the article in the web. But the article may
	be kept on a Usenet archive server with only NNTP access.
X-No-Html: yes
Content-Language: en-US
Bytes: 2707

ram@zedat.fu-berlin.de (Stefan Ram) wrote or quoted:
>This video might be a hit with some folks: "The strange details
>of std__string at Facebook" - Nicholas Ormrod, CppCon 2016.

  Also, "Efficiency with Algorithms, Performance with Data Structures"
  - Chandler Carruth, CppCon 2014, from which I take:

CPUS HAVE A HIERARCHICAL CACHE SYSTEM

One cycle on a 3 GHz processor            1   ns
L1 cache reference                        0.5 ns
Branch mispredict                         5   ns
L2 cache reference                        7   ns          14x L1 cache
Mutex lock/unlock                        25   ns
Main memory reference                   100   ns          20xL2, 200xL1
Compress 1K bytes with Snappy         3,000   ns
Send 1K bytes over 1 Gbps network    10,000   ns  0.01 ms
Read 4K randomly from SSD           150,000   ns  0.15 ms
Read 1 MB sequentially from memory  250,000   ns  0.25 ms
Round trip within same datacenter   500,000   ns   0.5 ms
Read 1 MB sequentially From SSD   1,000,000   ns   1   ms 4x memory
Disk seek                        10,000,000   ns  10   ms 20xdatacen. RT
Read 1 MB sequentially from disk 20,000,000   ns  20   ms 80xmem.,20xSSD
Send packet CA->Netherlands->CA 150,000,000   ns 150   ms

 .