Programming

Reading Data Sheets If you are are in a position of influence affecting technology adoption in your enterprise you likely spend a lot of time reading data sheets from vendors.  This is just a quick blog entry about something I simply hav...
Reading Data Sheets If you are are in a position of influence affecting technology adoption in your enterprise you likely spend a lot of time reading data sheets from vendors.  This is just a quick blog entry about something I simply haven’t taken the time to cover even though the topic at hand has always be a “problem.” Well, at least since the release of the Oracle Exadata Database Machine X2-8. In the following references and screenshots you’ll see that Oracle cites 1.5 million flash read IOPS as an expected limit for both the full-rack Oracle Exadata Database Machine X3-2 and the Oracle Exadata Database Machine X3-8. All machines have limits and Exadata is no exception. Notice how I draw attention to the footnote that accompanies the flash read IOPS claim. Footnote number 3 says that both of these Exadata models are limited in flash read IOPS by the database host CPU. Let me repeat that for certain types of individuals that spend an inordinate amount of time scrutinizing my words for reasons other than education: The Oracle Exadata Database Machine data sheets explicitly state flash read IOPS are limited by host CPU. Oracle’s numbers in this case are SQL-driven from Oracle instances. I have no doubt these systems are both capable of achieving 1.5 million read IOPS from flash because, truth be told, that isn’t really all that many IOPS–especially when the IOPS throughput numbers are not accompanied by service times. In the 1990s it was all about “how much” but in modern times it’s about “how fast.” Bandwidth is an old, tired topic. Modern platforms are all about latency. Intel QPI put the problem of bandwidth to rest. So, again, I don’t doubt the 1.5 million flash read IOPS citation. Exadata has a lot of flash cards and a lot of host processors to drive concurrent I/O. Indeed, with the concurrent processing capabilities of both of these Exadata models, Oracle would be able to achieve 1.5 million IOPS even if the service times were more in line with what one would expect with mechanical storage. Again, we never see service time citations so in actuality the 1.5 million number is just a representation of how much in-flight I/O the platform can handle. Here is the new truth: IOPS is a storage bandwidth metric. Host CPU Limited! How Many CPUs? Here’s the stinger: Oracle blames host CPU for the 1.5 million flash read IOPS number. The problem with that is the X3-2 has 128 Xeon E5-2690 processor cores and the X3-8 has 160 Xeon E7-8870 processor cores. So what is Oracle’s real message here? Is it that the cores in the X3-8 are 20% slower than those in the X3-2 model? I don’t know. I can’t put words in Oracle’s mouth. However, if the data sheet is telling the truth then one of two things is true, either a) the E5-2690 processors are indeed 20% faster on a per-core basis than the E7-8870 or b) there is a processing asymmetry problem. Not All CPU Bottlenecks Are Created Equal Oracle would likely not be willing to dive into technical detail to the same level I do. Life is a series of choices–including who you chose to buy storage and platforms from. However, Oracle’s literature is clear about the number of active 40Gb QDR Infiniband ports there are in each configuration and this is where the asymmetry comes in. There are 8 active ports in both of these models. That means there are 8 streams of interrupt handling in both cases–regardless of how many cores there are in total. As is the case with any networked storage, I recommend you monitor mpstat -P ALL output on database hosts to see whether there are cores nailed to the wall with interrupt processing at levels below total CPU-saturation.  Never settle for high-level aggregate CPU utilization monitoring. Instead, drill down to the per-core level to watch out for asymmetry. Doing so is just good platform scientist work. Between now and the time you should find y
17 minutes ago
PHP
Many people wonder how they can improve the overall readability and cleanliness of their code. It seems impossible to understand exactly how to rewrite code in such a way that makes it clean, easy to understand and simple to work with. B...
Many people wonder how they can improve the overall readability and cleanliness of their code. It seems impossible to understand exactly how to rewrite code in such a way that makes it clean, easy to understand and simple to work with. But clean code is about a few simple principles, one of which is reducing [...]
32 minutes ago
UnQLite - Embeddable NoSQL database engine. LicenseFinder - Help your lawyers figure out how your gems are licensed. This stuff is, by the way, an utter mess in the ruby community. "Confident Ruby" now in Beta! - New ebook from Avdi Gr...
UnQLite - Embeddable NoSQL database engine. LicenseFinder - Help your lawyers figure out how your gems are licensed. This stuff is, by the way, an utter mess in the ruby community. "Confident Ruby" now in Beta! - New ebook from Avdi Grimm. ish. - Responsive HTML design tool that throws random viewports at your code so you can see how it copes (or doesn't).
33 minutes ago
Are there any Django applications that do the same thing as [link]>? IdeaScale basically seems to be a way for users to submit proposals, and have them voted up and down by other users; like polls, but in a web 2.1beta kind of way. It&...
Are there any Django applications that do the same thing as [link]>? IdeaScale basically seems to be a way for users to submit proposals, and have them voted up and down by other users; like polls, but in a web 2.1beta kind of way. It's something I've been asked about. Any suggestions?
38 minutes ago
As happened last year, the third week of June 2013 sees several important collocated meetings relevant to the public sector's use of ICT. The centerpiece is the European Commission's Digital Agenda Assembly, a series of high level worksh...
As happened last year, the third week of June 2013 sees several important collocated meetings relevant to the public sector's use of ICT. The centerpiece is the European Commission's Digital Agenda Assembly, a series of high level workshops and plenary sessions focused on digital skills, entrepreneurship and growth. The event is being held in Dublin as Ireland is the current holder of the rotating European Presidency and puts many key players in the same place at the same time providing an excellent opportunity for other meetings to be scheduled. W3C is involved in two such meetings. First, the Crossover Project's International Conference on Policy Making 2.0. This is the culmination of a research project to establish how ICT is transforming government and how it can be put to ever better use. Open data, big data, policy modeling, crowdsourcing, serious gaming and opinion mining are all aspects of this that are covered in detail in the Crossover Research Roadmap. This highly detailed document captures input from experts in many different fields and is likely to be highly influential in shaping research into future uses of ICT for governance and policy making. As well as the research roadmap the Crossover project will present a prize to the best policy making 2.0 application - submissions are open until the end of this week. After the DAA, attention turns to SEMIC - The Semantic Interoperability Conference 2013. The European Commission's ISA Programme is a major effort to increase interoperability between public sector systems across Europe. There are many strands to this initiative but from a W3C perspective it's been an important input to the Government Linked Data Working Group's vocabularies both in terms of development and implementation experience. That experience - of public sector bodies working within their national frameworks to deliver interoperable services across borders and across sectors - is at the heart of the SEMIC conference. Open data has had its first flush of excitement. Now the results of early implementations are in and we're looking at consolidation, greater interoperability, and building a more sustainable ecosystem that encompasses not just government data but scientific and cultural heritage data - and not all of it necessarily open. The events in Dublin next month are all part of the process that is shaping what W3C does next to ensure that the unique power of the Web is used to maximum effect when connecting governments and citizens. Expect more on that story in the coming weeks but for now, I urge anyone with an interest in these topics to head for Dublin in June.
about 1 hour ago
While I was building my first premium WordPress Plugin – the Avia Feedback Box – I needed to solve quite a few problems I have never encounterd when creating themes. During my research I stumbled upon several really cool wordpress functi...
While I was building my first premium WordPress Plugin – the Avia Feedback Box – I needed to solve quite a few problems I have never encounterd when creating themes. During my research I stumbled upon several really cool wordpress functions that I want to share with you.
about 1 hour ago
#Ebook Deal/Day: Save 50% - Produce Picture-Perfect Images with GIMP 2.8
#Ebook Deal/Day: Save 50% - Produce Picture-Perfect Images with GIMP 2.8
about 1 hour ago
Morning/Afternoon - I am new to django, and I have been working through the tutorial. I have reached Tutorial 4, [link], which is about getting the voting on the polls app to work, but when I set detail.html I get an error, " NoReve...
Morning/Afternoon - I am new to django, and I have been working through the tutorial. I have reached Tutorial 4, [link], which is about getting the voting on the polls app to work, but when I set detail.html I get an error, " NoReverseMatch at /polls/2/
about 1 hour ago
More and more projects today are using CSS preprocessors, with Sass being one of the most popular out there. What exactly is a CSS preprocessor? It is a scripting language based on CSS that lets you do amazing things with your CSS. We ha...
More and more projects today are using CSS preprocessors, with Sass being one of the most popular out there. What exactly is a CSS preprocessor? It is a scripting language based on CSS that lets you do amazing things with your CSS. We have a new series out, Learning Sass and Compass, to get you up to speed on this new cool tool for front-end development.
about 2 hours ago
2013/05/22 -- Alain RODRIGUEZ
2013/05/22 -- Alain RODRIGUEZ
about 2 hours ago