{"id":682,"date":"2006-04-27T07:35:53","date_gmt":"2006-04-26T21:35:53","guid":{"rendered":"http:\/\/www.flamingspork.com\/blog\/2006\/04\/27\/cool-dolphin-sci-interconnect-stuff\/"},"modified":"2013-12-18T08:41:53","modified_gmt":"2013-12-17T22:41:53","slug":"cool-dolphin-sci-interconnect-stuff","status":"publish","type":"post","link":"https:\/\/www.flamingspork.com\/blog\/2006\/04\/27\/cool-dolphin-sci-interconnect-stuff\/","title":{"rendered":"Cool Dolphin SCI interconnect stuff"},"content":{"rendered":"<p><a href=\"http:\/\/www.dolphinics.com\/\">http:\/\/www.dolphinics.com\/<\/a> make this cool SCI socket hardware that can be used with <a href=\"http:\/\/www.mysql.com\/products\/database\/cluster\/\">MySQL Cluster<\/a> (for example, <a href=\"http:\/\/www.dolphinics.com\/products\/\">like their example setup<\/a>).<\/p>\n<p>Their tech provides high performance (350MB\/sec avail to the user) and low latency (worst case is like 2 or 3 micro seconds to send 512bytes to another node). So can pretty much kick the butt of gig-e.<\/p>\n<p>We could probably do some really cool stuff with boosting performance (even further) when using SCI with some of the things I have in mind for multithreaded ndb kernel &#8211; basically changing some of the ways we do sending and receiving signals and improvements in shared memory stuff.<\/p>\n<p>Big points from the presentation are:<\/p>\n<ul>\n<li>small messages sent using basic CPU instructions (it&#8217;s remote memory mapping)<\/li>\n<li>low cost to write to remote memory address<\/li>\n<li>raw worst case send latency for 8 bytes is about 210 nanoseconds<\/li>\n<li>no need to lock down or register memory<\/li>\n<li>TCP\/IP processing not done in software<\/li>\n<li>Just LD_PRELOAD the library and it does your (user specified) Ip communication over the SCI interconnect<\/li>\n<li>can be fully redundant (dual cards, distributed switching)<\/li>\n<li>each card is about 5w of power (rather insignificant compared to other techs apparrently)<\/li>\n<li>really small time for failover<\/li>\n<\/ul>\n<p>It&#8217;s also good to note that 10 gigabit ethernet doesn&#8217;t really buy you anything in reducing latency. SCI gives you both improved bandwidth and latency.<\/p>\n<p>People looking into wanting more performance in MySQL Cluster should have a good look at it.<\/p>\n<p>It&#8217;s also used in fighter planes &#8211; which make cool loud jet noises.<\/p>\n<p>(err&#8230; i didn&#8217;t mean to sound to rah rah. hopefully i&#8217;ve just sounded like i think the tech is <strong>shiny<\/strong>)<\/p>\n<p><strong>UPDATE:<\/strong> corrected milli to nano.<\/p>\n<p><strong>UPDATE mk2<\/strong>: corrected nano to micro. Oh how I wish I just typed correctly to begin with. At least I&#8217;ve had some rest now :)<\/p>\n","protected":false},"excerpt":{"rendered":"<p>http:\/\/www.dolphinics.com\/ make this cool SCI socket hardware that can be used with MySQL Cluster (for example, like their example setup). Their tech provides high performance (350MB\/sec avail to the user) and low latency (worst case is like 2 or 3 &hellip; <a href=\"https:\/\/www.flamingspork.com\/blog\/2006\/04\/27\/cool-dolphin-sci-interconnect-stuff\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[5,14],"tags":[],"class_list":["post-682","post","type-post","status-publish","format-standard","hentry","category-cool-gadgets","category-mysql"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p5a6n8-b0","jetpack-related-posts":[{"id":377,"url":"https:\/\/www.flamingspork.com\/blog\/2005\/03\/18\/arjen_lentz-google-code\/","url_meta":{"origin":682,"position":0},"title":"arjen_lentz: Google Code","author":"Stewart Smith","date":"2005-03-18","format":false,"excerpt":"arjen_lentz: Google Code their multithreaded core dump lib and their memory stuff looks interesting... being able to core dump a multithreaded app *while running* would be so cool. Hit an error condition, dump out a core file to send to engineers to fix it. even if it's recoverable. rock.","rel":"","context":"In &quot;mysql&quot;","block_context":{"text":"mysql","link":"https:\/\/www.flamingspork.com\/blog\/category\/work-et-al\/mysql\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":2335,"url":"https:\/\/www.flamingspork.com\/blog\/2011\/03\/21\/the-problems-with-multi-tenant-mysql\/","url_meta":{"origin":682,"position":1},"title":"The problems with multi-tenant MySQL","author":"Stewart Smith","date":"2011-03-21","format":false,"excerpt":"Just about every web host in the world gives people \"mysql databases\". Usually one. Why? because that's how permissions work in MySQL and it's a relatively simple way to set it up (each of your web host clients is a user with access to their one database). This has a\u2026","rel":"","context":"In &quot;mysql&quot;","block_context":{"text":"mysql","link":"https:\/\/www.flamingspork.com\/blog\/category\/work-et-al\/mysql\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":3899,"url":"https:\/\/www.flamingspork.com\/blog\/2014\/11\/11\/mysql-cluster-on-power8\/","url_meta":{"origin":682,"position":2},"title":"MySQL Cluster on POWER8","author":"Stewart Smith","date":"2014-11-11","format":false,"excerpt":"So, I've written previously on MySQL on POWER, and today is a quick bit of news about MySQL Cluster on POWER - specifically MySQL Cluster 7.3.7. I ran into three main issues in getting some flexAsync benchmark results. One of them was the fact that I wanted to do this\u2026","rel":"","context":"In &quot;code&quot;","block_context":{"text":"code","link":"https:\/\/www.flamingspork.com\/blog\/category\/code\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":483,"url":"https:\/\/www.flamingspork.com\/blog\/2005\/10\/10\/gnulinux-and-the-k750i-bluetooth-remote\/","url_meta":{"origin":682,"position":3},"title":"GNU\/Linux and the K750i Bluetooth Remote","author":"Stewart Smith","date":"2005-10-10","format":false,"excerpt":"GNU\/Linux and the K750i Bluetooth Remote Works with my K700i too. Useful to know that the remote control stuff works. will be great for presentations :)","rel":"","context":"In &quot;cool gadgets&quot;","block_context":{"text":"cool gadgets","link":"https:\/\/www.flamingspork.com\/blog\/category\/cool-gadgets\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":3304,"url":"https:\/\/www.flamingspork.com\/blog\/2013\/05\/13\/the-mysql-cluster-storage-engine\/","url_meta":{"origin":682,"position":4},"title":"The MySQL Cluster storage engine","author":"Stewart Smith","date":"2013-05-13","format":false,"excerpt":"This is one close to my heart. I've recently written on other storage engines:\u00c2\u00a0Where are they now: MySQL Storage Engines,\u00c2\u00a0The MERGE storage engine: not dead, just resting\u00e2\u20ac\u00a6. or forgotten\u00c2\u00a0and The MEMORY storage engine. Today, it's the turn of MySQL Cluster. Like InnoDB, MySQL Cluster started outside of MySQL. Those of\u2026","rel":"","context":"In &quot;code&quot;","block_context":{"text":"code","link":"https:\/\/www.flamingspork.com\/blog\/category\/code\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":692,"url":"https:\/\/www.flamingspork.com\/blog\/2006\/05\/08\/a-googly-mysql-cluster-talk-google-video\/","url_meta":{"origin":682,"position":5},"title":"A Googly MySQL Cluster Talk &#8211; Google Video","author":"Stewart Smith","date":"2006-05-08","format":false,"excerpt":"A Googly MySQL Cluster Talk - Google Video The talk I gave at Google is now up on Google Video for all to see. I don't think I gave it as well as I did at the User Conference (largely because, I think, by this time I was really tired),\u2026","rel":"","context":"In &quot;mysql&quot;","block_context":{"text":"mysql","link":"https:\/\/www.flamingspork.com\/blog\/category\/work-et-al\/mysql\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]}],"jetpack_likes_enabled":true,"_links":{"self":[{"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/posts\/682","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/comments?post=682"}],"version-history":[{"count":2,"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/posts\/682\/revisions"}],"predecessor-version":[{"id":3551,"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/posts\/682\/revisions\/3551"}],"wp:attachment":[{"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/media?parent=682"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/categories?post=682"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/tags?post=682"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}