Silicon Valley Code Camp : October 8th and 9th, 2011.
Steve is an independent software consultant in Silicon Valley specializing in the Microsoft product stack having retired after a 40+ year career doing semiconductor industry, with side excursions in to medical image management. Over the years he has worked with a wide range of platforms from mainframes to PCs, many of which have gone to the great scrap yard in the sky.
Co-chair Baynet User Group's South Bay Chapter and Baynet Treasurer
The programmer free ride to ever increasing performance generated by ever increasing CPU clock speed has come to an end.
In the brave new world, which is emerging, programmer will need to take advantage for the ever-increasing number of cores on the coming generations of CPU chips if they want to improve the performance of their applications.
In the past creating programs, which took advantage of multi-core architectures, has been a very challenging task.
In recent years researchers at Intel and in academia have created C++ libraries, which greatly simplify the task for many common type of applications. Microsoft developer having observed these effort have incorporated many of the better ideas for these efforts into .Net 4.0 as the parallel task extension.
In this session the speaker will review the common pit falls associated this the classic multi-threaded approach to designing multi-core application and then demonstrate how the parallel task extension in .Net 4.0 allow C# programmers to avoid these problems while still taking full advantage of multi-core CPUs.
While the task parallel extension eliminate much of the pain associated with developing multi-core aware application, live is “not still all roses”. The speaker will therefore also discuss limitations on the types of application, which can benefit from the use of the parallel task extensions in .Net 4.0 and a number of pit falls associated with its use.
The session will also include a discussion and demonstration of the tools for analyzing performance issue in multi-core application which were added to the Visual Studio tools set in version 10.
Regex is a powerful text-parsing tool, which has been part of the brand X operating systems for many generations. The Regex Class in .Net (System.Text.RegularExpresion) brings its power to the Windows world. There are a number of .NET examples and tutorials dealing with the use of Regex for validating user input via Web pages. The use of Regex, when extracting information from a collection of wordy text documents has however received much less attention. In this tutorial I will first give a brief overview of the .Net Regex class and its expression syntax. I will then point the audience to a number of Web resources, which can provide assistance in dealing with the rather cryptic Regex expression syntax. The remainder of the presentation will be a discussion how Baynet used the .Net Regex class to extract details about thousands of wordy SMTP email deliver failure reports it receives when sending out meeting announcement and populate a database used to resolve delivery problems with users email notifications. The email deliver reports are text documents formatted according to SMTP reply specifications found in RFCs 5336, 1893, & 821. Time permitting the presentation will close with a brief discussion of the merits of Regex vs. the .Net string class methods when parsing text documents.