{"id":41840,"date":"2020-02-17T05:33:00","date_gmt":"2020-02-17T02:33:00","guid":{"rendered":"https:\/\/prohoster.info\/blog\/blog_prohoster\/google-opublikoval-novyj-variant-sistemy-raspredeleniya-pamyati-tcmalloc"},"modified":"2020-02-17T05:33:00","modified_gmt":"2020-02-17T02:33:00","slug":"google-opublikoval-novyj-variant-sistemy-raspredeleniya-pamyati-tcmalloc","status":"publish","type":"post","link":"https:\/\/prohoster.info\/de\/blog\/google-opublikoval-novyj-variant-sistemy-raspredeleniya-pamyati-tcmalloc","title":{"rendered":"Google hat eine neue Version des Speichermanagement-Systems TCMalloc ver\u00f6ffentlicht","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Google <noindex><a rel=\"nofollow\" href=\"https:\/\/abseil.io\/blog\/20200212-tcmalloc\">pr\u00e4sentierte<\/a><\/noindex> neue Version des Speichermanagement-Systems <noindex><a rel=\"nofollow\" href=\"https:\/\/google.github.io\/tcmalloc\/\">TCMalloc<\/a><\/noindex>, das in vielen internen Projekten von Google verwendet wird. Der TCMalloc-Code ist in C++ geschrieben und <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/google\/tcmalloc\">wird unter der GPLv3-Lizenz bereitgestellt.<\/a><\/noindex> unter der Apache-Lizenz ver\u00f6ffentlicht. F\u00fcr die Verwendung ist ein Compiler erforderlich, der C++17 f\u00fcr C++ und C11 f\u00fcr C (gcc 9.2+ oder clang 9.0+) unterst\u00fctzt. Aus den Betriebssystemen <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/google\/tcmalloc\/blob\/master\/docs\/platforms.md\">wird unterst\u00fctzt<\/a><\/noindex> wird nur Linux (x86, PPC) unterst\u00fctzt.<\/p>\n<p>Bemerkenswert ist, dass seit 2005 eine weitere Variante von tcmalloc existiert, die <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/gperftools\/gperftools\/blob\/master\/src\/tcmalloc.cc\">bereitgestellt wurde<\/a><\/noindex> im Rahmen des Pakets <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/gperftools\/gperftools\/\">gperftools<\/a><\/noindex> (Google Performance Tools). Dies sind zwei <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/gperftools\/gperftools\/issues\/1169#issuecomment-585321782\">unterschiedliche<\/a><\/noindex> Projekte mit gemeinsamen Wurzeln. Das neue TCMalloc stellt eher einen Versuch dar, den Code aktueller interner Entwicklungen von Google zu \u00f6ffnen, ist jedoch derzeit nicht auf die Bereitstellung eines stabilen ABI und die Unterst\u00fctzung eines breiten Spektrums an Betriebssystemen ausgerichtet. Die Wartung des alten tcmalloc aus gperftools wird fortgesetzt, aber neue Funktionen wie das Binden des Caches an die CPU sind nicht vorgesehen.<\/p>\n<p>TCMalloc \u0432\u043a\u043b\u044e\u0447\u0430\u0435\u0442 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044e \u0421\u0438-\u0444\u0443\u043d\u043a\u0446\u0438\u0438 malloc() \u0438 \u0421++ \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u0430 &#171;new&#187;, \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u0434\u043b\u044f \u0434\u043e\u0441\u0442\u0438\u0436\u0435\u043d\u0438\u044f \u0432\u044b\u0441\u043e\u043a\u043e\u0439 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0438 \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0432 \u043c\u043d\u043e\u0433\u043e\u043f\u043e\u0442\u043e\u0447\u043d\u044b\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u0445. TCMalloc  \u0442\u0430\u043a\u0436\u0435 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u0438\u043d\u0442\u0440\u043e\u0441\u043f\u0435\u043a\u0446\u0438\u0438 \u0438 \u043f\u0440\u043e\u0444\u0438\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f, \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0449\u0438\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044e \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u044b\u0435 \u0441\u0432\u0435\u0434\u0435\u043d\u0438\u044f \u043e\u0431 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0438 \u043f\u0430\u043c\u044f\u0442\u0438  \u0432 \u043a\u0443\u0447\u0435. \u0412 \u043a\u043e\u0434\u0435 \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u044e\u0442\u0441\u044f \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u0441\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0435\u0439 \u044f\u0437\u044b\u043a\u0430 C++, \u0442\u0430\u043a\u0438\u0445 \u043a\u0430\u043a<br \/>\nden delete-Operator mit <noindex><a rel=\"nofollow\" href=\"https:\/\/isocpp.org\/files\/papers\/n3778.html\">Gr\u00f6\u00dfenangabe<\/a><\/noindex> aus C++14 und die Speicherzuweisung mit <noindex><a rel=\"nofollow\" href=\"http:\/\/www.open-std.org\/jtc1\/sc22\/wg21\/docs\/papers\/2016\/p0035r1.html\">Ausrichtung<\/a><\/noindex> aus C++17.<\/p>\n<p>TCMalloc <noindex><a rel=\"nofollow\" href=\"https:\/\/google.github.io\/tcmalloc\/design\">besteht<\/a><\/noindex> aus drei Komponenten: einem Frontend mit Cache f\u00fcr schnelle Zuordnung und Freigabe von Speicher, einer Schicht zum Bef\u00fcllen des Frontend-Caches und einem Backend, das Operationen wie das Abrufen von Speicher vom Betriebssystem, das Verwalten gro\u00dfer Mengen ungenutzten Speichers und das Zur\u00fcckgeben \u00fcberfl\u00fcssiger Speicher an das OS durchf\u00fchrt. Der Cache ist von Sperren befreit und arbeitet an den CPU-Kernen, kann jedoch auf ein threadgebundenes Cache-Modell zur\u00fcckgreifen, wenn die erforderliche Funktionalit\u00e4t im Betriebssystem-Kernel nicht verf\u00fcgbar ist (die Bindung des Caches an die CPU funktioniert nur in aktuellen Linux-Kerneln). Das Backend unterst\u00fctzt sowohl den Umgang mit normalen Speicherseiten als auch mit gro\u00dfen Seiten (hugepages).<\/p>\n<p><center><noindex><a rel=\"nofollow\" href=\"https:\/\/google.github.io\/tcmalloc\/images\/tcmalloc_internals.png\"><img decoding=\"async\" alt=\"Google hat eine neue Version des Speichermanagement-Systems TCMalloc ver\u00f6ffentlicht\" src=\"\/wp-content\/uploads\/2020\/02\/a1938ff7433f5801e20371f31f7678be.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/a><\/noindex><\/center><\/p>\n<p>Hauptmerkmale von TCMalloc:<\/p>\n<ul>\n<li class=\"l\"> Schnelle Speicherzuweisung und -freigabe unter Verwendung von Caching. Die meisten Speicherzuweisungsoperationen erfordern keine Sperren, was eine gute Skalierbarkeit f\u00fcr Multithread-Anwendungen mit hohem Parallelismus bei der Ausf\u00fchrung von Aufgaben gew\u00e4hrleistet;\n<li class=\"l\"> Flexible Speichernutzung, die es erm\u00f6glicht, freigegebene Speicherbereiche f\u00fcr Objekte unterschiedlicher Gr\u00f6\u00dfe erneut zu verwenden oder Speicher an das Betriebssystem zur\u00fcckzugeben;\n<li class=\"l\"> Geringe Overhead-Kosten pro Objekt durch die Zuweisung von Objekten gleicher Gr\u00f6\u00dfe in Seiten und eine effiziente Darstellung kleiner Objekte. Logische Seiten mit den Gr\u00f6\u00dfen 4KiB, 8KiB, 32KiB und 256KiB werden unterst\u00fctzt. Zum Beispiel wird bei der Anforderung von 512 Byte Speicher eine gesamte 4KiB-Seite f\u00fcr 512-Byte-Objekte zugewiesen, auf der 8 solcher Objekte Platz finden;\n<li class=\"l\"> Feinabstimmung durch Festlegung der Cache-Gr\u00f6\u00dfe und der Parameter zur Intensit\u00e4t der R\u00fcckgabe von Speicher an das Betriebssystem m\u00f6glich;\n<li class=\"l\"> Bereitstellung detaillierter Informationen zur Analyse der Speichernutzung durch die Anwendung.\n<\/ul>\n<p><noindex><a rel=\"nofollow\" name=\"link\"><\/a><\/noindex><\/p>\n<p>Quelle: <a \ncontent=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=52364\">opennet.ru<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Google \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b\u0430 \u043d\u043e\u0432\u044b\u0439 \u0432\u0430\u0440\u0438\u0430\u043d\u0442 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u043f\u0430\u043c\u044f\u0442\u0438 TCMalloc, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0432\u043e \u043c\u043d\u043e\u0433\u0438\u0445 \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0445 \u043f\u0440\u043e\u0435\u043a\u0442\u0430\u0445 Google. \u041a\u043e\u0434 TCMalloc \u043d\u0430\u043f\u0438\u0441\u0430\u043d \u043d\u0430 \u0421++ \u0438 \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u044f\u0435\u0442\u0441\u044f \u043f\u043e\u0434 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0435\u0439 Apache. \u0414\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u043d\u0430\u043b\u0438\u0447\u0438\u0435 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440\u0430 \u0441 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u043e\u0439 C++17 \u0434\u043b\u044f \u044f\u0437\u044b\u043a\u0430 C++, \u0438 C11 \u0434\u043b\u044f \u044f\u0437\u044b\u043a\u0430 \u0421\u0438 (gcc 9.2+ \u0438\u043b\u0438 clang 9.0+). \u0418\u0437 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e Linux (x86, PPC). [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":41841,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-41840","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.10 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Google \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b\u0430 \u043d\u043e\u0432\u044b\u0439 \u0432\u0430\u0440\u0438\u0430\u043d\u0442 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u043f\u0430\u043c\u044f\u0442\u0438 TCMalloc, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0432\u043e \u043c\u043d\u043e\u0433\u0438\u0445 \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0445 \u043f\u0440\u043e\u0435\u043a\u0442\u0430\u0445 Google. \u041a\u043e\u0434 TCMalloc \u043d\u0430\u043f\u0438\u0441\u0430\u043d \u043d\u0430 \u0421++ \u0438 \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u044f\u0435\u0442\u0441\u044f \u043f\u043e\u0434 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0435\u0439 Apache. \u0414\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u043d\u0430\u043b\u0438\u0447\u0438\u0435 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440\u0430 \u0441 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u043e\u0439 C++17 \u0434\u043b\u044f \u044f\u0437\u044b\u043a\u0430 C++, \u0438 C11 \u0434\u043b\u044f \u044f\u0437\u044b\u043a\u0430 \u0421\u0438 (gcc 9.2+ \u0438\u043b\u0438 clang 9.0+). \u0418\u0437 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e Linux (x86, PPC).\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/de\/blog\/google-opublikoval-novyj-variant-sistemy-raspredeleniya-pamyati-tcmalloc\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.10\" \/>\n\t\t<meta property=\"og:locale\" content=\"de_DE\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47Google \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043b \u043d\u043e\u0432\u044b\u0439 \u0432\u0430\u0440\u0438\u0430\u043d\u0442 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u043f\u0430\u043c\u044f\u0442\u0438 TCMalloc | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Google \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b\u0430 \u043d\u043e\u0432\u044b\u0439 \u0432\u0430\u0440\u0438\u0430\u043d\u0442 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u043f\u0430\u043c\u044f\u0442\u0438 TCMalloc, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0432\u043e \u043c\u043d\u043e\u0433\u0438\u0445 \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0445 \u043f\u0440\u043e\u0435\u043a\u0442\u0430\u0445 Google. \u041a\u043e\u0434 TCMalloc \u043d\u0430\u043f\u0438\u0441\u0430\u043d \u043d\u0430 \u0421++ \u0438 \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u044f\u0435\u0442\u0441\u044f \u043f\u043e\u0434 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0435\u0439 Apache. \u0414\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u043d\u0430\u043b\u0438\u0447\u0438\u0435 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440\u0430 \u0441 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u043e\u0439 C++17 \u0434\u043b\u044f \u044f\u0437\u044b\u043a\u0430 C++, \u0438 C11 \u0434\u043b\u044f \u044f\u0437\u044b\u043a\u0430 \u0421\u0438 (gcc 9.2+ \u0438\u043b\u0438 clang 9.0+). \u0418\u0437 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e Linux (x86, PPC).\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/de\/blog\/google-opublikoval-novyj-variant-sistemy-raspredeleniya-pamyati-tcmalloc\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-02-17T02:33:00+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-02-17T02:33:00+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Google hat eine neue Version des Speichermanagementsystems TCMalloc ver\u00f6ffentlicht | ProHoster","description":"Google hat eine neue Version des Speichermanagementsystems TCMalloc vorgestellt, das in vielen internen Projekten von Google verwendet wird. Der TCMalloc-Code ist in C++ geschrieben und unter der Apache-Lizenz ver\u00f6ffentlicht. F\u00fcr die Verwendung ist ein Compiler erforderlich, der C++17 f\u00fcr C++ und C11 f\u00fcr C unterst\u00fctzt (gcc 9.2+ oder clang 9.0+). Unterst\u00fctzung bieten nur Linux-Betriebssysteme (x86, PPC).","canonical_url":"https:\/\/prohoster.info\/de\/blog\/google-opublikoval-novyj-variant-sistemy-raspredeleniya-pamyati-tcmalloc","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"de_DE","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47Google \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043b \u043d\u043e\u0432\u044b\u0439 \u0432\u0430\u0440\u0438\u0430\u043d\u0442 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u043f\u0430\u043c\u044f\u0442\u0438 TCMalloc | ProHoster","og:description":"\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Google \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b\u0430 \u043d\u043e\u0432\u044b\u0439 \u0432\u0430\u0440\u0438\u0430\u043d\u0442 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u043f\u0430\u043c\u044f\u0442\u0438 TCMalloc, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0432\u043e \u043c\u043d\u043e\u0433\u0438\u0445 \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0445 \u043f\u0440\u043e\u0435\u043a\u0442\u0430\u0445 Google. \u041a\u043e\u0434 TCMalloc \u043d\u0430\u043f\u0438\u0441\u0430\u043d \u043d\u0430 \u0421++ \u0438 \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u044f\u0435\u0442\u0441\u044f \u043f\u043e\u0434 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0435\u0439 Apache. \u0414\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u043d\u0430\u043b\u0438\u0447\u0438\u0435 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440\u0430 \u0441 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u043e\u0439 C++17 \u0434\u043b\u044f \u044f\u0437\u044b\u043a\u0430 C++, \u0438 C11 \u0434\u043b\u044f \u044f\u0437\u044b\u043a\u0430 \u0421\u0438 (gcc 9.2+ \u0438\u043b\u0438 clang 9.0+). \u0418\u0437 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e Linux (x86, PPC).","og:url":"https:\/\/prohoster.info\/de\/blog\/google-opublikoval-novyj-variant-sistemy-raspredeleniya-pamyati-tcmalloc","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-02-17T02:33:00+00:00","article:modified_time":"2020-02-17T02:33:00+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"41840","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 00:09:25","updated":"2022-09-27 17:39:00"},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts\/41840","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/comments?post=41840"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts\/41840\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/media\/41841"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/media?parent=41840"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/categories?post=41840"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/tags?post=41840"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}