{"id":19328,"date":"2010-06-24T16:01:11","date_gmt":"2010-06-24T15:01:11","guid":{"rendered":"http:\/\/alienbabeltech.com\/main\/?p=19328"},"modified":"2010-06-24T16:15:08","modified_gmt":"2010-06-24T15:15:08","slug":"debunking-the-100x-gpu-vs-cpu-myth-really","status":"publish","type":"post","link":"http:\/\/alienbabeltech.com\/main\/debunking-the-100x-gpu-vs-cpu-myth-really\/","title":{"rendered":"Debunking the 100X GPU vs. CPU Myth &#8211; really?"},"content":{"rendered":"<p align=\"center\"><script type=\"text\/javascript\">\/\/ <![CDATA[\n google_ad_client = \"pub-7021221536180758\"; \/* 468x60, created 11\/11\/09 *\/ google_ad_slot = \"1949837292\"; google_ad_width = 468; google_ad_height = 60;\n\/\/ ]]><\/script><br \/>\n<script src=\"http:\/\/pagead2.googlesyndication.com\/pagead\/show_ads.js\" type=\"text\/javascript\">\n<\/script><\/p>\n<p>At the International Symposium on Computer Architecture in Saint-Malo, France, Intel presented a <a href=\"http:\/\/delivery.acm.org\/10.1145\/1820000\/1816021\/p451-lee.pdf?key1=1816021&amp;key2=7226427721&amp;coll=GUIDE&amp;dl=GUIDE&amp;CFID=94608761&amp;CFTOKEN=50783980\" onclick=\"_gaq.push(['_trackEvent', 'outbound-article', 'http:\/\/delivery.acm.org\/10.1145\/1820000\/1816021\/p451-lee.pdf?key1=1816021&amp;key2=7226427721&amp;coll=GUIDE&amp;dl=GUIDE&amp;CFID=94608761&amp;CFTOKEN=50783980', 'technical paper']);\" onclick=\"s_objectID=&quot;http:\/\/delivery.acm.org\/10.1145\/1820000\/1816021\/p451-lee.pdf?key1=1816021&amp;key2=7226427721&amp;coll=GU_1&quot;;return this.s_oc?this.s_oc(e):true\"  target=\"_blank\">technical paper<\/a> where they showed that <a href=\"http:\/\/en.wikipedia.org\/wiki\/Kernel_%28computing%29\" onclick=\"_gaq.push(['_trackEvent', 'outbound-article', 'http:\/\/en.wikipedia.org\/wiki\/Kernel_%28computing%29', 'application kernels']);\" onclick=\"s_objectID=&quot;http:\/\/en.wikipedia.org\/wiki\/Kernel_(computing)_1&quot;;return this.s_oc?this.s_oc(e):true\"  target=\"_blank\">application kernels<\/a> run up to 2.5 times faster overall on a NVIDIA GeForce GTX 280 as compared with an Intel Core i7 960. The .pdf which can be downloaded from the above link is very technical but well worth reading.<\/p>\n<p>What is strange is that Intel admits that NVIDIA&#8217;s last generation GTX 280 is (at least) 2.5 times faster than their Core i7 960 CPU.\u00a0 From their own chart:<\/p>\n<p><a href=\"http:\/\/i0.wp.com\/alienbabeltech.com\/main\/wp-content\/uploads\/2010\/06\/RelativePerf_i7vsGTX280.JPG\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-medium wp-image-19329\" title=\"RelativePerf_i7vsGTX280\" src=\"http:\/\/i0.wp.com\/alienbabeltech.com\/main\/wp-content\/uploads\/2010\/06\/RelativePerf_i7vsGTX280-300x184.jpg?resize=300%2C184\" alt=\"RelativePerf_i7vsGTX280\" srcset=\"http:\/\/i0.wp.com\/alienbabeltech.com\/main\/wp-content\/uploads\/2010\/06\/RelativePerf_i7vsGTX280-300x184.jpg?resize=300%2C184 300w, http:\/\/alienbabeltech.com\/main\/wp-content\/uploads\/2010\/06\/RelativePerf_i7vsGTX280.JPG 555w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" data-recalc-dims=\"1\" \/><\/a>There is a 14x speedup in using GTX 280 over the Core i7 960 in one of the tests although the paper does not really specify testing methodology other than the Core i7 was heavily optimized:<\/p>\n<blockquote><p>We measured the performance of our kernels on (1) a 3.2GHz Core i7-960 processor running the SUSE Enterprise Server 11 operating system with 6GB of PC1333 DDR3 memory on an Intel DX58SO motherboard, and (2) a 1.3GHz GTX280 processor (an eVGA GeForce GTX280 card with 1GB GDDR3 memory) in the same Core i7 system with Nvidia driver version 19.180 and the CUDA 2.3 toolkit.<\/p><\/blockquote>\n<p>From their own <a href=\"http:\/\/blogs.nvidia.com\/ntersect\/2010\/06\/gpus-are-only-up-to-14-times-faster-than-cpus-says-intel.html\" onclick=\"_gaq.push(['_trackEvent', 'outbound-article', 'http:\/\/blogs.nvidia.com\/ntersect\/2010\/06\/gpus-are-only-up-to-14-times-faster-than-cpus-says-intel.html', 'blog']);\" >blog<\/a>, NVIDIA believes the codes that were run on the GTX 280 were run right out-of-the-box, without any optimization. It is somewhat unclear from the technical paper exactly what codes were run and how they were compared between the GPU and CPU.\u00a0 The Intel paper is called \u201cDebunking the 100x GPU vs CPU Myth: An Evaluation of Throughput Computing on CPU and GPU&#8221;.\u00a0 It is a fact that not every applications can see this kind of speed up by using the parallel processing of the GPU.\u00a0 However, below are a few examples that can be found on <a href=\"http:\/\/www.nvidia.com\/cuda\" onclick=\"_gaq.push(['_trackEvent', 'outbound-article', 'http:\/\/www.nvidia.com\/cuda', 'CUDA Zone']);\" onclick=\"s_objectID=&quot;http:\/\/www.nvidia.com\/cuda_1&quot;;return this.s_oc?this.s_oc(e):true\"  target=\"_blank\">CUDA Zone<\/a>, of other developers that have achieved speed ups of more than 100x in their application.<\/p>\n<blockquote>\n<table style=\"height: 297px;\" border=\"1\" cellspacing=\"0\" cellpadding=\"0\" width=\"520\">\n<tbody>\n<tr>\n<td width=\"163\">\n<p align=\"center\"><strong>Developer<\/strong><\/p>\n<\/td>\n<td width=\"66\">\n<p align=\"center\"><strong>Speed Up<\/strong><\/p>\n<\/td>\n<td width=\"411\">\n<p align=\"center\"><strong>Reference<\/strong><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td width=\"163\" valign=\"top\">Massachusetts<\/p>\n<p>General Hospital<\/td>\n<td width=\"66\" valign=\"top\">300x<\/td>\n<td width=\"411\" valign=\"top\"><a href=\"http:\/\/www.opticsinfobase.org\/oe\/abstract.cfm?uri=oe-17-22-20178\" onclick=\"_gaq.push(['_trackEvent', 'outbound-article', 'http:\/\/www.opticsinfobase.org\/oe\/abstract.cfm?uri=oe-17-22-20178', 'http:\/\/www.opticsinfobase.org\/oe\/abstract.cfm?uri=oe-17-22-20178']);\" onclick=\"s_objectID=&quot;http:\/\/www.opticsinfobase.org\/oe\/abstract.cfm?uri=oe-17-22-20178_1&quot;;return this.s_oc?this.s_oc(e):true\">http:\/\/www.opticsinfobase.org\/oe\/abstract.cfm?uri=oe-17-22-20178<\/a><\/td>\n<\/tr>\n<tr>\n<td width=\"163\" valign=\"top\">University of Rochester<\/td>\n<td width=\"66\" valign=\"top\">160x<\/td>\n<td width=\"411\" valign=\"top\"><a href=\"http:\/\/cyberaide.googlecode.com\/svn\/trunk\/papers\/08-cuda-biostat\/vonLaszewski-08-cuda-biostat.pdf\" onclick=\"_gaq.push(['_trackEvent','download','http:\/\/cyberaide.googlecode.com\/svn\/trunk\/papers\/08-cuda-biostat\/vonLaszewski-08-cuda-biostat.pdf']);\" onclick=\"s_objectID=&quot;http:\/\/cyberaide.googlecode.com\/svn\/trunk\/papers\/08-cuda-biostat\/vonLaszewski-08-cuda-biostat.pdf_1&quot;;return this.s_oc?this.s_oc(e):true\">http:\/\/cyberaide.googlecode.com\/svn\/trunk\/papers\/08-cuda-biostat\/vonLaszewski-08-cuda-biostat.pdf<\/a><\/td>\n<\/tr>\n<tr>\n<td width=\"163\" valign=\"top\">University of\u00a0 Amsterdam<\/td>\n<td width=\"66\" valign=\"top\">150x<\/td>\n<td width=\"411\" valign=\"top\"><a href=\"http:\/\/arxiv.org\/PS_cache\/arxiv\/pdf\/0709\/0709.3225v1.pdf\" onclick=\"_gaq.push(['_trackEvent','download','http:\/\/arxiv.org\/PS_cache\/arxiv\/pdf\/0709\/0709.3225v1.pdf']);\" onclick=\"s_objectID=&quot;http:\/\/arxiv.org\/PS_cache\/arxiv\/pdf\/0709\/0709.3225v1.pdf_1&quot;;return this.s_oc?this.s_oc(e):true\">http:\/\/arxiv.org\/PS_cache\/arxiv\/pdf\/0709\/0709.3225v1.pdf<\/a><\/td>\n<\/tr>\n<tr>\n<td width=\"163\" valign=\"top\">Harvard University<\/td>\n<td width=\"66\" valign=\"top\">130x<\/td>\n<td width=\"411\" valign=\"top\"><a href=\"http:\/\/www.springerlink.com\/content\/u1704254764133t5\/?p=c5eead9af73340e58a313d95581cfd40&amp;pi=49\" onclick=\"_gaq.push(['_trackEvent', 'outbound-article', 'http:\/\/www.springerlink.com\/content\/u1704254764133t5\/?p=c5eead9af73340e58a313d95581cfd40&amp;pi=49', 'http:\/\/www.springerlink.com\/content\/u1704254764133t5\/?p=c5eead9af73340e58a313d95581cfd40?=49']);\" onclick=\"s_objectID=&quot;http:\/\/www.springerlink.com\/content\/u1704254764133t5\/?p=c5eead9af73340e58a313d95581cfd40&amp;pi=49_1&quot;;return this.s_oc?this.s_oc(e):true\">http:\/\/www.springerlink.com\/content\/u1704254764133t5\/?p=c5eead9af73340e58a313d95581cfd40?=49<\/a><\/td>\n<\/tr>\n<tr>\n<td width=\"163\" valign=\"top\">University of Pennsylvania<\/td>\n<td width=\"66\" valign=\"top\">130x<\/td>\n<td width=\"411\" valign=\"top\"><a href=\"http:\/\/ic.ese.upenn.edu\/abstracts\/spice_fpl2009.html\" onclick=\"_gaq.push(['_trackEvent', 'outbound-article', 'http:\/\/ic.ese.upenn.edu\/abstracts\/spice_fpl2009.html', 'http:\/\/ic.ese.upenn.edu\/abstracts\/spice_fpl2009.html']);\" onclick=\"s_objectID=&quot;http:\/\/ic.ese.upenn.edu\/abstracts\/spice_fpl2009.html_1&quot;;return this.s_oc?this.s_oc(e):true\">http:\/\/ic.ese.upenn.edu\/abstracts\/spice_fpl2009.html<\/a><\/td>\n<\/tr>\n<tr>\n<td width=\"163\" valign=\"top\">Nanyang Tech, Singapore<\/td>\n<td width=\"66\" valign=\"top\">130x<\/td>\n<td width=\"411\" valign=\"top\"><a href=\"http:\/\/www.opticsinfobase.org\/abstract.cfm?URI=oe-17-25-23147\" onclick=\"_gaq.push(['_trackEvent', 'outbound-article', 'http:\/\/www.opticsinfobase.org\/abstract.cfm?URI=oe-17-25-23147', 'http:\/\/www.opticsinfobase.org\/abstract.cfm?URI=oe-17-25-23147']);\" onclick=\"s_objectID=&quot;http:\/\/www.opticsinfobase.org\/abstract.cfm?URI=oe-17-25-23147_1&quot;;return this.s_oc?this.s_oc(e):true\">http:\/\/www.opticsinfobase.org\/abstract.cfm?URI=oe-17-25-23147<\/a><\/td>\n<\/tr>\n<tr>\n<td width=\"163\" valign=\"top\">University of\u00a0 Illinois<\/td>\n<td width=\"66\" valign=\"top\">125x<\/td>\n<td width=\"411\" valign=\"top\"><a href=\"http:\/\/www.nvidia.com\/object\/cuda_apps_flash_new.html#state=detailsOpen;aid=c24dcc0f-c60c-45f9-8d57-588e9460a58f\" onclick=\"_gaq.push(['_trackEvent', 'outbound-article', 'http:\/\/www.nvidia.com\/object\/cuda_apps_flash_new.html#state=detailsOpen;aid=c24dcc0f-c60c-45f9-8d57-588e9460a58f', 'http:\/\/www.nvidia.com\/object\/cuda_apps_flash_new.html#state=detailsOpen;aid=c24dcc0f-c60c-45f9-8d57-588e9460a58f']);\" onclick=\"s_objectID=&quot;http:\/\/www.nvidia.com\/object\/cuda_apps_flash_new.html#state=detailsOpen;aid=c24dcc0f-c60c-45f9-8d_1&quot;;return this.s_oc?this.s_oc(e):true\">http:\/\/www.nvidia.com\/object\/cuda_apps_flash_new.html#state=detailsOpen;aid=c24dcc0f-c60c-45f9-8d57-588e9460a58f<\/a><\/td>\n<\/tr>\n<tr>\n<td width=\"163\" valign=\"top\">Boise State<\/td>\n<td width=\"66\" valign=\"top\">100x<\/td>\n<td width=\"411\" valign=\"top\"><a href=\"http:\/\/coen.boisestate.edu\/senocak\/files\/BSU_CUDA_Res_v5.pdf\" onclick=\"_gaq.push(['_trackEvent','download','http:\/\/coen.boisestate.edu\/senocak\/files\/BSU_CUDA_Res_v5.pdf']);\" onclick=\"s_objectID=&quot;http:\/\/coen.boisestate.edu\/senocak\/files\/BSU_CUDA_Res_v5.pdf_1&quot;;return this.s_oc?this.s_oc(e):true\">http:\/\/coen.boisestate.edu\/senocak\/files\/BSU_CUDA_Res_v5.pdf<\/a><\/td>\n<\/tr>\n<tr>\n<td width=\"163\" valign=\"top\">Florida Atlantic University<\/td>\n<td width=\"66\" valign=\"top\">100x<\/td>\n<td width=\"411\" valign=\"top\"><a href=\"http:\/\/portal.acm.org\/citation.cfm?id=1730836.1730839&amp;coll=GUIDE&amp;dl=ACM&amp;CFID=88441459&amp;CFTOKEN=90295264\" onclick=\"_gaq.push(['_trackEvent', 'outbound-article', 'http:\/\/portal.acm.org\/citation.cfm?id=1730836.1730839&amp;coll=GUIDE&amp;dl=ACM&amp;CFID=88441459&amp;CFTOKEN=90295264', 'http:\/\/portal.acm.org\/citation.cfm?id=1730836.1730839&amp;coll=GUIDE&amp;dl=ACM&amp;CFID=88441459&amp;CFTOKEN=90295264']);\" onclick=\"s_objectID=&quot;http:\/\/portal.acm.org\/citation.cfm?id=1730836.1730839&amp;coll=GUIDE&amp;dl=ACM&amp;CFID=88441459&amp;CFTOKEN=902_1&quot;;return this.s_oc?this.s_oc(e):true\">http:\/\/portal.acm.org\/citation.cfm?id=1730836.1730839&amp;coll=GUIDE&amp;dl=ACM&amp;CFID=88441459&amp;CFTOKEN=90295264<\/a><\/td>\n<\/tr>\n<tr>\n<td width=\"163\" valign=\"top\">Cambridge University<\/td>\n<td width=\"66\" valign=\"top\">100x<\/td>\n<td width=\"411\" valign=\"top\"><a href=\"http:\/\/www.wbic.cam.ac.uk\/%7Erea1\/research\/AIRWC.pdf\" onclick=\"_gaq.push(['_trackEvent','download','http:\/\/www.wbic.cam.ac.uk\/%7Erea1\/research\/AIRWC.pdf']);\" onclick=\"s_objectID=&quot;http:\/\/www.wbic.cam.ac.uk\/~rea1\/research\/AIRWC.pdf_1&quot;;return this.s_oc?this.s_oc(e):true\">http:\/\/www.wbic.cam.ac.uk\/~rea1\/research\/AIRWC.pdf<\/a><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/blockquote>\n<p>Intel states for their testing, &#8220;We typically find that the highest performance is achieved when multiple threads are used per core. For Core i7, the best performance comes from running 8 threads on 4 cores. For GTX280, while the maximum number of warps that can be executed on one GPU SM is 32, a judicious choice is required to balance the benefit of multithreading with the increased pressure on registers and on-chip memory resources. Kernels are often run with 4 to 8 warps per core for best GPU performance.&#8221;<\/p>\n<p>Well, what did Intel find after optimizing their Core i7 960 CPU?<\/p>\n<blockquote><p>For example, the previously reported LBM number on GPUs claims 114X speedup over CPUs. However, we found that with careful multithreading, reorganization of memory access patterns, and SIMD optimizations, the performance on both CPUs and GPUs is limited by memory bandwidth and the gap is reduced to only 5X.<\/p><\/blockquote>\n<p>&#8220;Only 5X&#8221; faster!\u00a0 This is the first time that this editor has seen such an admission from any company about their product being radically slower than a competitor&#8217;s.\u00a0 Worst of all for Intel, they are testing with NVIDIA&#8217;s <em>last generation<\/em> GPU; the new GTX 480 is probably well over twice faster than GTX 280 for this type of parallel computing.<\/p>\n<p>Intel has some suggestions for developers to improve their CPU performance &#8211; none of which are easy nor practical to implement.<\/p>\n<blockquote><p><strong>CONCLUSION<\/strong><br \/>\nIn this paper, we analyzed the performance of an important set of throughput computing kernels on Intel Core i7-960 and Nvidia GTX280. We show that CPUs and GPUs are much closer in performance (2.5X) than the previously reported orders of magnitude difference. We believe many factors contributed to the reported large gap in performance, such as which CPU and GPU are used and what optimizations are applied to the code. Optimizations for CPU that contributed to performance improvements are: multithreading, cache blocking, and reorganization of memory accesses for SIMDification. Optimizations for GPU that contributed to performance improvements are: minimizing global synchronization and using local shared buffers are the two key techniques to improve performance. Our analysis of the optimized code on the current CPU and GPU platforms led us to identify the key hardware architecture features for future throughput computing machines \u2013 high compute and bandwidth, large caches, gather\/scatter support, efficient synchronization, and fixed functional units. We plan to perform power efficiency study on CPUs and GPUs in the future.<\/p><\/blockquote>\n<p>We have been following Fermi and Tesla Computing since our very first article on <a href=\"http:\/\/alienbabeltech.com\/main\/?p=643\">NVISION08<\/a>.\u00a0 With NVIDIA&#8217;s next conference, we could see their emphasis was now being placed on GPU computing on <a href=\"http:\/\/alienbabeltech.com\/main\/?p=11661\">Day 1<\/a>, <a href=\"http:\/\/alienbabeltech.com\/main\/?p=11825\">Day 2<\/a> and <a href=\"http:\/\/alienbabeltech.com\/main\/?p=11911\">Day 3<\/a> of their GTC, last September.\u00a0 We also looked very deeply into the Fermi GF100 architecture <a href=\"http:\/\/alienbabeltech.com\/main\/?p=14600\">here<\/a> and their video card <a href=\"http:\/\/alienbabeltech.com\/main\/?p=16475\">GTX 480<\/a> which has met their goal of a General Purpose Unit (GPU aka Graphics Processing Unit) that renders amazing graphics for gaming.\u00a0 Clearly NVIDIA is moving into Intel&#8217;s territory and it will be quite interesting to see what happens.\u00a0 We promise to stay on top of this developing story for our readers.<\/p>\n<p>Mark Poppin<\/p>\n<p>ABT Senior Editor<\/p>\n<blockquote><p>Please join us in our <a href=\"http:\/\/alienbabeltech.com\/abt\/index.php\" target=\"_blank\">Forums<\/a><\/p>\n<p>Become a Fan on <a href=\"http:\/\/www.facebook.com\/pages\/AlienBabelTech\/123268467142\" onclick=\"_gaq.push(['_trackEvent', 'outbound-article', 'http:\/\/www.facebook.com\/pages\/AlienBabelTech\/123268467142', 'Facebook']);\" target=\"_blank\">Facebook<\/a><\/p>\n<p>Follow us on <a href=\"http:\/\/twitter.com\/alienbabeltech\" onclick=\"_gaq.push(['_trackEvent', 'outbound-article', 'http:\/\/twitter.com\/alienbabeltech', 'Twitter']);\" target=\"_blank\">Twitter<\/a><\/p>\n<p>For the latest updates from ABT, please <a href=\"http:\/\/alienbabeltech.com\/main\/?feed=rss2\" target=\"_blank\">join our RSS News Feed<\/a><\/p>\n<p>Join our Distributed Computing teams<\/p>\n<ul>\n<li>Folding@Home &#8211; Team AlienBabelTech &#8211; 164304<\/li>\n<li>SETI@Home &#8211; Team AlienBabelTech &#8211; 138705<\/li>\n<li><a href=\"http:\/\/www.worldcommunitygrid.org\/reg\/viewRegister.do?teamID=3P39R3SRV1\" onclick=\"_gaq.push(['_trackEvent', 'outbound-article', 'http:\/\/www.worldcommunitygrid.org\/reg\/viewRegister.do?teamID=3P39R3SRV1', 'World Community Grid &#8211; Team AlienBabelTech']);\" target=\"_blank\">World Community Grid &#8211; Team AlienBabelTech<\/a><\/li>\n<\/ul>\n<\/blockquote>\n","protected":false},"excerpt":{"rendered":"<p>At the International Symposium on Computer Architecture in Saint-Malo, France, Intel presented a technical paper where they showed that application kernels run up to 2.5 times faster overall on a NVIDIA GeForce GTX 280&#46;&#46;&#46;<\/p>\n","protected":false},"author":6,"featured_media":19329,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2533,6,7],"tags":[2498,3822,2354,2364,170,3058,34,121,3823,1832],"class_list":["post-19328","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-abt-news","category-news","category-technology","tag-core-i7-960","tag-cpu-versus-gpu","tag-fermi","tag-gpu-computing","tag-gtx280","tag-gtx-480","tag-intel","tag-nvidia","tag-supercomputing","tag-tesla"],"_links":{"self":[{"href":"http:\/\/alienbabeltech.com\/main\/wp-json\/wp\/v2\/posts\/19328","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/alienbabeltech.com\/main\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/alienbabeltech.com\/main\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/alienbabeltech.com\/main\/wp-json\/wp\/v2\/users\/6"}],"replies":[{"embeddable":true,"href":"http:\/\/alienbabeltech.com\/main\/wp-json\/wp\/v2\/comments?post=19328"}],"version-history":[{"count":0,"href":"http:\/\/alienbabeltech.com\/main\/wp-json\/wp\/v2\/posts\/19328\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"http:\/\/alienbabeltech.com\/main\/wp-json\/wp\/v2\/media\/19329"}],"wp:attachment":[{"href":"http:\/\/alienbabeltech.com\/main\/wp-json\/wp\/v2\/media?parent=19328"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/alienbabeltech.com\/main\/wp-json\/wp\/v2\/categories?post=19328"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/alienbabeltech.com\/main\/wp-json\/wp\/v2\/tags?post=19328"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}