From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.1 (2015-04-28) on sa.local.altlinux.org X-Spam-Level: X-Spam-Status: No, score=-4.3 required=5.0 tests=ALL_TRUSTED,BAYES_00, RP_MATCHES_RCVD autolearn=unavailable autolearn_force=no version=3.4.1 To: ALT Linux Team development discussions , Michael Shigorin References: <20210217225518.k3zlhvofkr5a2rzy@example.org> <20210217232237.GH23794@altlinux.org> <20210218113756.GA32487@altlinux.org> <36b7252b-b1be-b0d0-b91d-7265aa90fd37@basealt.ru> <20210218215202.GB25729@imap.altlinux.org> <53db4ff7-eee6-d2c8-e29f-1a1f5994f27a@basealt.ru> <20210219105057.GA8935@imap.altlinux.org> From: Alexey Sheplyakov Message-ID: <7e6f7724-005f-3873-1306-fd92325d8d68@basealt.ru> Date: Fri, 19 Feb 2021 16:29:15 +0400 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.6.1 MIME-Version: 1.0 In-Reply-To: <20210219105057.GA8935@imap.altlinux.org> Content-Type: text/plain; charset=koi8-r Content-Language: en-US Content-Transfer-Encoding: 8bit Subject: [devel] =?utf-8?b?0J4g0L/RgNC+0L/Rg9GB0LrQvdC+0Lkg0YHQv9C+0YE=?= =?utf-8?b?0L7QsdC90L7RgdGC0Lgg0YPRgdGC0YDQvtC50YHRgtCyINGF0YDQsNC90LU=?= =?utf-8?b?0L3QuNGPIChSZTogIFRpbWUgbGltaXQp?= X-BeenThere: devel@lists.altlinux.org X-Mailman-Version: 2.1.12 Precedence: list Reply-To: ALT Linux Team development discussions List-Id: ALT Linux Team development discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 19 Feb 2021 12:29:21 -0000 Archived-At: List-Archive: List-Post: Добрый день! On 19.02.2021 14:50, Michael Shigorin wrote: > On Fri, Feb 19, 2021 at 10:11:01AM +0300, Anton Farygin wrote: >>> Для нынешней RAM три гига в секунду -- это очень медленно. >> Расскажи мне пожалуйста про производительность современной >> памяти. Что значит "очень медленно" ?  Как ты сравнивал ? > > 12 Гб/с я видел на DDR3 в 2009 году (Ломоносов); > 10 Гб/с тогда для неё было вполне нормальным. > Сейчас не шибко в курсе, но припоминается от > двадцати, что ли. $ cat > hello.c < int main(int argc, char **argv) { printf("Hello, world\n"); return 0; } EOF $ strace -f -o gcc.log gcc -O0 -g0 -c hello.c $ cat gcc.log | wc -l 1079 $ time gcc -O0 -g0 -c hello.c real 0m0,046s user 0m0,022s sys 0m0,005s По порядку величины 5 микросекунд на системный вызов. $ git ls-files '*.c' | wc -l 29574 Нужно примерно 30000 * 1000 = 5 * 10**7 системных вызовов, займут 150 секунд. $ du -sh . 5.6G . (исходники, объекники, история git, вообще все) При скорости записи 250 МБ/sec (ширпотребный SSD) записать такой объем можно за 22 секунды. 15% времени, необходимого на системные вызовы. А значит, даже бесконечно быстрый (RAM)диск ускорит сборку не более чем на 15%. TL;DR: сборка гораздо раньше упрется в скорость выполнения системных вызовов (fork/read/write/access).