{"id":119157,"date":"2024-08-07T15:43:09","date_gmt":"2024-08-07T13:43:10","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/dostupen-vortex-2-2-otkrytyj-gpgpu-na-baze-arhitektury-risc-v"},"modified":"2024-08-07T15:43:09","modified_gmt":"2024-08-07T13:43:10","slug":"dostupen-vortex-2-2-otkrytyj-gpgpu-na-baze-arhitektury-risc-v","status":"publish","type":"post","link":"https:\/\/prohoster.info\/ro\/blog\/news\/dostupen-vortex-2-2-otkrytyj-gpgpu-na-baze-arhitektury-risc-v","title":{"rendered":"Vortex 2.2 este disponibil, un GPGPU deschis bazat pe arhitectura RISC-V","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>A fost lansat\u0103 versiunea 2.2 a proiectului Vortex, care dezvolt\u0103 un GPGPU bazat pe arhitectura setului de instruc\u021biuni RISC-V, destinat s\u0103 execute calcule paralele utiliz\u00e2nd API-ul OpenCL \u0219i modelul de execu\u021bie SIMT (Single Instruction, Multiple Threads). Proiectul poate fi de asemenea utilizat \u00een cercet\u0103ri \u00een domeniul graficii 3D \u0219i \u00een dezvoltarea de noi arhitecturi GPU. Schemele, descrierile blocurilor hardware \u00een limbajul Verilog, simulatorul, driverele \u0219i documenta\u021bia de proiect \u00eenso\u021bitoare sunt distribuite sub licen\u021ba Apache 2.0.     <\/p>\n<p>Baza GPGPU este format\u0103 dintr-un ISA RISC-V standard, extins cu anumite instruc\u021biuni suplimentare necesare pentru suportul func\u021biilor GPU \u0219i gestionarea fluxurilor. \u00cen acest context, modific\u0103rile aduse arhitecturii setului de instruc\u021biuni RISC-V sunt minime \u0219i, atunci c\u00e2nd este posibil, se utilizeaz\u0103 instruc\u021biunile vectoriale existente. Printre instruc\u021biunile suplimentare se num\u0103r\u0103: &#171;tex&#187; pentru accelerarea proces\u0103rii texturilor, vx_rast pentru gestionarea rasteriz\u0103rii, vx_rop pentru procesarea fragmentelor, ad\u00e2ncimii \u0219i transparen\u021bei, vx_imadd pentru efectuarea opera\u021biei &#171;\u00eenmul\u021bire \u0219i adunare&#187;, vx_wspawn, vx_tmc \u0219i vx_bar pentru activarea fronturilor de instruc\u021biuni \u0219i a fluxurilor \u00een acestea (wavefront, set de fire, executate \u00een paralel de SIMD Engine), vx_split \u0219i vx_join.     <center><img decoding=\"async\" alt=\"Vortex 2.2 este disponibil, un GPGPU deschis bazat pe arhitectura RISC-V \" src=\"\/wp-content\/uploads\/2024\/08\/e9bf3436f9ea931993a04517f807fb72.png\" style=\"display:block;margin: 0 auto;\" \/><\/center>          <\/p>\n<p>GPGPU-ul dezvoltat suport\u0103 arhitecturi de set de instruc\u021biuni RISC-V de 32 \u0219i 64 de bi\u021bi RV32IMF \u0219i RV64IMAFD, \u0219i poate include memorie partajat\u0103 op\u021bional\u0103, memorii cache de nivelurile L1, L2 \u0219i L3, precum \u0219i un num\u0103r configurabil de nuclee, blocuri de sarcini (warps) \u0219i fire de execu\u021bie. Pentru fiecare nucleu, exist\u0103 posibilitatea de a activa un num\u0103r configurabil de ALU, FPU, LSU \u0219i SFU. FPGA-urile Altera Arria 10, Altera Stratix 10, Xilinx Alveo U50, U250, U280 \u0219i Xilinx Versal VCK5000 pot fi utilizate pentru prototipuri. Simulatorul de func\u021bionare a cipului poate fi realizat cu Verilator (simulator Verilog), RTLSIM (simularea RTL) \u0219i SimX (simularea software).    <\/p>\n<p>Pentru dezvoltarea aplica\u021biilor, este oferit un set de instrumente, care include variantele adaptate pentru Vortex ale PoCL (compilatoare \u0219i runtime OpenCL), LLVM\/Clang, GCC \u0219i Binutils. Proiectul sus\u021bine specifica\u021bia OpenCL 1.2, iar prin transla\u021bie \u00een OpenCL, suportul pentru reprezenta\u021bia intermediar\u0103 a shaderelor SPIR-V este implementat. Pentru grafic\u0103, pe tehnologiile Vortex, se dezvolt\u0103 GPU-ul deschis Skybox, care suport\u0103 API-ul grafic Vulkan. Prototipul Skybox, creat pe baza FPGA Altera Stratix 10 \u0219i incluz\u00e2nd 32 de nuclee (512 fire), a permis, la o frecven\u021b\u0103 de 230 MHz, ob\u021binerea unei performan\u021be de 3.7 gigapixeli pe secund\u0103 (29.4 gigatranzac\u021bii pe secund\u0103).           <\/p>\n<p>Printre modific\u0103rile din versiunea Vortex 2.2:  <\/p>\n<ul>\n<li class=\"l\"> A fost ad\u0103ugat API-ul vx_spawn_taskgroups pentru a lansa nuclee care suport\u0103 executarea segmentat\u0103 a sarcinilor 3D.\n<li class=\"l\"> A fost ad\u0103ugat suport pentru ZICOND, extensia arhitecturii setului de instruc\u021biuni RISC-V, care asigur\u0103 executarea condi\u021bionat\u0103 a opera\u021biunilor f\u0103r\u0103 ramificare.\n<li class=\"l\"> Compilatorul OpenCL a fost actualizat pentru a planifica execu\u021bia la nivel de fire individuale (thread-level, fiecare fir execut\u00e2nd sarcina sa independent de celelalte), \u00een loc de grupuri de sarcini (warp-level), ca \u00eenainte.\n<li class=\"l\"> \u00cen OpenCL a fost ad\u0103ugat suport pentru compilarea JIT \u0219i pentru nuclee pe 64 de bi\u021bi.\n<li class=\"l\"> A fost implementat suportul pentru \u00eenc\u0103rcarea dinamic\u0103 a runtime-ului Vortex.\n<li class=\"l\"> A fost propus\u0103 o nou\u0103 documenta\u021bie pentru configurarea FPGA Xilinx.\n<li class=\"l\"> A fost inclus\u0103 testarea sintezei logicii folosind instrumentarul Yosys.\n<li class=\"l\"> \u00cen opera\u021biunile ierarhice flush \u0219i \u00een modul write-back a fost asigurat suportul pentru cache.\n<li class=\"l\"> A fost optimizat\u0103 viteza de verificare a scoreboard-ului \u0219i a lucrului cu operanzi la nivelul transferurilor de registre (RTL, Register Transfer Level).\n<li class=\"l\"> A fost ad\u0103ugat suport pentru simulatorul de memorie DRAM Ramulator 2.0.\n<li class=\"l\"> A fost realizat trecerea la utilizarea versiunilor noi Verilator 5.0 (simulator SystemVerilog) \u0219i LLVM 18.0, precum \u0219i actualizarea instrumentarului bazat pe CentOS 7.9.\n<li class=\"l\"> \u00cen locul sistemului de integrare continu\u0103 Travis CI, a fost utilizat serviciul GitHub CI.    <\/ul>\n<p>Sursa: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=61669\">opennet.ro<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0432\u044b\u043f\u0443\u0441\u043a \u043f\u0440\u043e\u0435\u043a\u0442\u0430 Vortex 2.2, \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u044e\u0449\u0435\u0433\u043e \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u0439 GPGPU \u043d\u0430 \u0431\u0430\u0437\u0435 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u044b \u043d\u0430\u0431\u043e\u0440\u0430 \u043a\u043e\u043c\u0430\u043d\u0434 RISC-V, \u0440\u0430\u0441\u0441\u0447\u0438\u0442\u0430\u043d\u043d\u044b\u0439 \u043d\u0430 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u044c\u043d\u044b\u0445 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0439 \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c API OpenCL \u0438 \u043c\u043e\u0434\u0435\u043b\u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f SIMT (Single Instruction, Multiple Threads). \u041f\u0440\u043e\u0435\u043a\u0442 \u0442\u0430\u043a\u0436\u0435 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d \u043f\u0440\u0438 \u043f\u0440\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0438 \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u0439 \u0432 \u043e\u0431\u043b\u0430\u0441\u0442\u0438 3D-\u0433\u0440\u0430\u0444\u0438\u043a\u0438 \u0438 \u043f\u0440\u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435 \u043d\u043e\u0432\u044b\u0445 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440 GPU. \u0421\u0445\u0435\u043c\u044b, \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u044f \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u043d\u044b\u0445 \u0431\u043b\u043e\u043a\u043e\u0432 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Verilog, [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":119158,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-119157","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0432\u044b\u043f\u0443\u0441\u043a \u043f\u0440\u043e\u0435\u043a\u0442\u0430 Vortex 2.2, \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u044e\u0449\u0435\u0433\u043e \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u0439 GPGPU \u043d\u0430 \u0431\u0430\u0437\u0435 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u044b \u043d\u0430\u0431\u043e\u0440\u0430 \u043a\u043e\u043c\u0430\u043d\u0434 RISC-V, \u0440\u0430\u0441\u0441\u0447\u0438\u0442\u0430\u043d\u043d\u044b\u0439 \u043d\u0430 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u044c\u043d\u044b\u0445 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0439 \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c API OpenCL \u0438 \u043c\u043e\u0434\u0435\u043b\u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f SIMT.\" \/>\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\/ro\/blog\/news\/dostupen-vortex-2-2-otkrytyj-gpgpu-na-baze-arhitektury-risc-v\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"ro_RO\" \/>\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\u0414\u043e\u0441\u0442\u0443\u043f\u0435\u043d Vortex 2.2, \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u0439 GPGPU \u043d\u0430 \u0431\u0430\u0437\u0435 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u044b RISC-V | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0432\u044b\u043f\u0443\u0441\u043a \u043f\u0440\u043e\u0435\u043a\u0442\u0430 Vortex 2.2, \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u044e\u0449\u0435\u0433\u043e \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u0439 GPGPU \u043d\u0430 \u0431\u0430\u0437\u0435 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u044b \u043d\u0430\u0431\u043e\u0440\u0430 \u043a\u043e\u043c\u0430\u043d\u0434 RISC-V, \u0440\u0430\u0441\u0441\u0447\u0438\u0442\u0430\u043d\u043d\u044b\u0439 \u043d\u0430 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u044c\u043d\u044b\u0445 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0439 \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c API OpenCL \u0438 \u043c\u043e\u0434\u0435\u043b\u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f SIMT.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/ro\/blog\/news\/dostupen-vortex-2-2-otkrytyj-gpgpu-na-baze-arhitektury-risc-v\" \/>\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-08-07T13:43:10+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2024-08-07T13:43:10+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\udd47 Disponibil Vortex 2.2, GPGPU deschis bazat pe arhitectura RISC-V | ProHoster","description":"A fost publicat versiunea proiectului Vortex 2.2, care dezvolt\u0103 GPGPU deschis bazat pe arhitectura setului de instruc\u021biuni RISC-V, destinat execut\u0103rii calculilor paralele folosind API OpenCL \u0219i modelul de execu\u021bie SIMT.","canonical_url":"https:\/\/prohoster.info\/ro\/blog\/news\/dostupen-vortex-2-2-otkrytyj-gpgpu-na-baze-arhitektury-risc-v","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"ro_RO","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\u0414\u043e\u0441\u0442\u0443\u043f\u0435\u043d Vortex 2.2, \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u0439 GPGPU \u043d\u0430 \u0431\u0430\u0437\u0435 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u044b RISC-V | ProHoster","og:description":"\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0432\u044b\u043f\u0443\u0441\u043a \u043f\u0440\u043e\u0435\u043a\u0442\u0430 Vortex 2.2, \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u044e\u0449\u0435\u0433\u043e \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u0439 GPGPU \u043d\u0430 \u0431\u0430\u0437\u0435 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u044b \u043d\u0430\u0431\u043e\u0440\u0430 \u043a\u043e\u043c\u0430\u043d\u0434 RISC-V, \u0440\u0430\u0441\u0441\u0447\u0438\u0442\u0430\u043d\u043d\u044b\u0439 \u043d\u0430 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u044c\u043d\u044b\u0445 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0439 \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c API OpenCL \u0438 \u043c\u043e\u0434\u0435\u043b\u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f SIMT.","og:url":"https:\/\/prohoster.info\/ro\/blog\/news\/dostupen-vortex-2-2-otkrytyj-gpgpu-na-baze-arhitektury-risc-v","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-08-07T13:43:10+00:00","article:modified_time":"2024-08-07T13:43:10+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"119157","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 05:33:20","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2026-01-23 05:33:20","updated":"2026-01-23 05:33:20","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts\/119157","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/comments?post=119157"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts\/119157\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/media\/119158"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/media?parent=119157"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/categories?post=119157"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/tags?post=119157"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}