{"id":120576,"date":"2024-11-15T13:09:07","date_gmt":"2024-11-15T11:09:07","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/opublikovan-standart-parallelnogo-programmirovaniya-openmp-6-0"},"modified":"2024-11-15T13:09:07","modified_gmt":"2024-11-15T11:09:07","slug":"opublikovan-standart-parallelnogo-programmirovaniya-openmp-6-0","status":"publish","type":"post","link":"https:\/\/prohoster.info\/da\/blog\/news\/opublikovan-standart-parallelnogo-programmirovaniya-openmp-6-0","title":{"rendered":"Standarden for parallel programmering OpenMP 6.0 er blevet offentliggjort","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Efter tre \u00e5rs udvikling er s\u00e6t specifikationer for OpenMP 6.0 (Open Multi-Processing) offentliggjort, som definerer API og metoder til anvendelse af parallelt programmering for C, C++ og Fortran p\u00e5 flerkernede og hybrid (CPU+GPU\/DSP) systemer med delt hukommelse og vektorisering (SIMD). Det forventes, at den indledende st\u00f8tte til nogle funktioner i OpenMP 6.0 vil blive inkluderet i udgivelserne af LLVM\/Clang 20 og GCC 15.      <\/p>\n<p>V\u00e6sentlige \u00e6ndringer i OpenMP 6.0:  <\/p>\n<ul>\n<li class=\"l\"> Processen til programmering af opgaver (task), der definerer uafh\u00e6ngige dele af programmet, som kan k\u00f8re parallelt med andre dele, er blevet forenklet.\n<ul>\n<li class=\"l\"> Muligheden for at udf\u00f8re opgaver i frie tr\u00e5de (free-agent), der ikke er bundet til grupper af tr\u00e5de (teams), der k\u00f8rer parallelle regioner (parallel region, et kodeblok, der udf\u00f8res i flere tr\u00e5de).\n<li class=\"l\"> Underst\u00f8ttelsen af opbevaring af opgavernes graf (taskgraph), der definerer afh\u00e6ngigheder mellem opgaver og r\u00e6kkef\u00f8lgen for udf\u00f8relse af opgaver, er blevet sikret for at \u00f8ge effektiviteten af efterf\u00f8lgende reproduktion.\n<li class=\"l\"> Der er implementeret et mekanisme for transparente opgaver (\"transparent tasks\") for at forenkle styringen af afh\u00e6ngigheder og automatisk h\u00e5ndtering af udf\u00f8relsen af underopgaver.  <\/ul>\n<li class=\"l\"> Underst\u00f8ttelsen af beregningsenheder, der kan anvendes til at udf\u00f8re parallelle opgaver (CPU, GPU, DSP osv.), er blevet udvidet.\n<ul>\n<li class=\"l\"> Der er tilf\u00f8jet en ny syntaks for arrays, der muligg\u00f8r brugen af direktivet \"workdistribute\" til at fordele behandlingen af arrays mellem forskellige arbejdsenheder.\n<li class=\"l\"> Mulighederne for at styre hukommelsesallokering er blevet udvidet, hvilket forenkler styringen af variabler, for hvilke hukommelsen allokeres dynamisk.\n<li class=\"l\"> St\u00f8tten til attributter, der definerer standard datafordeling mellem enheder, er blevet udvidet.\n<li class=\"l\"> Det er blevet lettere at skrive kode til asynkrone dataoverf\u00f8rsler til yderligere beregningsenheder (GPU).\n<li class=\"l\"> Forvaltningen af hukommelse og dens binding til beregningsenheder er blevet forbedret.\n<li class=\"l\"> Direktivet \"groupprivate\" er blevet tilf\u00f8jet for at knytte hukommelsen til en gruppe tr\u00e5de, der k\u00f8rer p\u00e5 et bestemt beregningsapparat.  <\/ul>\n<li class=\"l\"> Programmering af visse typer looptransformationer, s\u00e5som sammens\u00e6tning af flere loops, \u00e6ndring af r\u00e6kkef\u00f8lgen af indlejrede loops og reversering af loops, er blevet forenklet.\n<li class=\"l\"> En ny induktionsoperation (induction) er blevet tilf\u00f8jet til organisering af parallelisering i l\u00f8kker med enkle aritmetiske beregninger og brugerdefinerede operationer, der afh\u00e6nger af tidligere v\u00e6rdier.\n<li class=\"l\"> Der er tilf\u00f8jet fuld st\u00f8tte til parallelisering af programmer skrevet med standarderne C23 (inklusive syntaks for attributter), Fortran 2023 og C++23. Nye attributter er tilf\u00f8jet til C\/C++.\n<li class=\"l\"> Mulighederne for styring af lager og hukommelse er blevet udvidet. Nye attributter er tilf\u00f8jet til kontrol over, hvordan hukommelsen skal tildeles og anvendes. En API er blevet tilf\u00f8jet til at bestemme og anmode om hukommelsesrum (memory space).\n<li class=\"l\"> Muligheder, der er blevet erkl\u00e6ret for\u00e6ldede i specifikationerne OpenMP 5.0, 5.1 og 5.2, er blevet fjernet.         <\/ul>\n<p>Kilde: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=62236\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u043e\u0441\u043b\u0435 \u0442\u0440\u0451\u0445 \u043b\u0435\u0442 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u043d\u0430\u0431\u043e\u0440 \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0439 OpenMP 6.0 (Open Multi-Processing), \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u044e\u0449\u0438\u0445 API \u0438 \u0441\u043f\u043e\u0441\u043e\u0431\u044b \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u043c\u0435\u0442\u043e\u0434\u043e\u0432 \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0434\u043b\u044f \u044f\u0437\u044b\u043a\u043e\u0432 \u0421\u0438, \u0421\u0438++ \u0438 \u0424\u043e\u0440\u0442\u0440\u0430\u043d \u043d\u0430 \u043c\u043d\u043e\u0433\u043e\u044f\u0434\u0435\u0440\u043d\u044b\u0445 \u0438 \u0433\u0438\u0431\u0440\u0438\u0434\u043d\u044b\u0445 (CPU+GPU\/DSP) \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0445 \u0441 \u043e\u0431\u0449\u0435\u0439 \u043f\u0430\u043c\u044f\u0442\u044c\u044e \u0438 \u0431\u043b\u043e\u043a\u0430\u043c\u0438 \u0432\u0435\u043a\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u0438 (SIMD). \u041f\u0440\u0435\u0434\u043f\u043e\u043b\u0430\u0433\u0430\u0435\u0442\u0441\u044f, \u0447\u0442\u043e \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u0430\u044f \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0445 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0435\u0439 OpenMP 6.0 \u0431\u0443\u0434\u0435\u0442 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0430 \u0432 \u0441\u043e\u0441\u0442\u0430\u0432 \u0432\u044b\u043f\u0443\u0441\u043a\u043e\u0432 LLVM\/Clang 20 \u0438 GCC [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-120576","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041f\u043e\u0441\u043b\u0435 \u0442\u0440\u0451\u0445 \u043b\u0435\u0442 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u043d\u0430\u0431\u043e\u0440 \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0439 OpenMP 6.0 (Open Multi-Processing), \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u044e\u0449\u0438\u0445 API \u0438 \u0441\u043f\u043e\u0441\u043e\u0431\u044b \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u043c\u0435\u0442\u043e\u0434\u043e\u0432 \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0434\u043b\u044f \u044f\u0437\u044b\u043a\u043e\u0432 \u0421\u0438, \u0421\u0438++ \u0438 \u0424\u043e\u0440\u0442\u0440\u0430\u043d \u043d\u0430 \u043c\u043d\u043e\u0433\u043e\u044f\u0434\u0435\u0440\u043d\u044b\u0445.\" \/>\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\/da\/blog\/news\/opublikovan-standart-parallelnogo-programmirovaniya-openmp-6-0\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"da_DK\" \/>\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\udd47\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442 \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f OpenMP 6.0 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041f\u043e\u0441\u043b\u0435 \u0442\u0440\u0451\u0445 \u043b\u0435\u0442 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u043d\u0430\u0431\u043e\u0440 \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0439 OpenMP 6.0 (Open Multi-Processing), \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u044e\u0449\u0438\u0445 API \u0438 \u0441\u043f\u043e\u0441\u043e\u0431\u044b \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u043c\u0435\u0442\u043e\u0434\u043e\u0432 \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0434\u043b\u044f \u044f\u0437\u044b\u043a\u043e\u0432 \u0421\u0438, \u0421\u0438++ \u0438 \u0424\u043e\u0440\u0442\u0440\u0430\u043d \u043d\u0430 \u043c\u043d\u043e\u0433\u043e\u044f\u0434\u0435\u0440\u043d\u044b\u0445.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/da\/blog\/news\/opublikovan-standart-parallelnogo-programmirovaniya-openmp-6-0\" \/>\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=\"2024-11-15T11:09:07+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2024-11-15T11:09:07+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\udd47Standarden for parallelt programmering OpenMP 6.0 er offentliggjort | ProHoster","description":"Efter tre \u00e5rs udvikling er s\u00e6ttet med specifikationer OpenMP 6.0 (Open Multi-Processing) offentliggjort, hvilket definerer API'et og metoderne til anvendelse af parallelt programmering for C, C++ og Fortran p\u00e5 flerkernede systemer.","canonical_url":"https:\/\/prohoster.info\/da\/blog\/news\/opublikovan-standart-parallelnogo-programmirovaniya-openmp-6-0","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"da_DK","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\udd47\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442 \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f OpenMP 6.0 | ProHoster","og:description":"\u041f\u043e\u0441\u043b\u0435 \u0442\u0440\u0451\u0445 \u043b\u0435\u0442 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u043d\u0430\u0431\u043e\u0440 \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0439 OpenMP 6.0 (Open Multi-Processing), \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u044e\u0449\u0438\u0445 API \u0438 \u0441\u043f\u043e\u0441\u043e\u0431\u044b \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u043c\u0435\u0442\u043e\u0434\u043e\u0432 \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0434\u043b\u044f \u044f\u0437\u044b\u043a\u043e\u0432 \u0421\u0438, \u0421\u0438++ \u0438 \u0424\u043e\u0440\u0442\u0440\u0430\u043d \u043d\u0430 \u043c\u043d\u043e\u0433\u043e\u044f\u0434\u0435\u0440\u043d\u044b\u0445.","og:url":"https:\/\/prohoster.info\/da\/blog\/news\/opublikovan-standart-parallelnogo-programmirovaniya-openmp-6-0","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":"2024-11-15T11:09:07+00:00","article:modified_time":"2024-11-15T11:09:07+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"120576","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":"default","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":"2026-01-23 08:02:22","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2026-01-23 08:02:22","updated":"2026-01-23 08:02:22","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts\/120576","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/comments?post=120576"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts\/120576\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/media?parent=120576"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/categories?post=120576"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/tags?post=120576"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}