Should You Care about TSX?

tab4.jpg

I’m not aware of whether multi-threading is a part of any university or not, but concurrency is covered in database management courses, so I’ll relate to that here. Basically, if you want to access some data stored somewhere, you can read the data and modify the data, and as long as you know how to do it, you can. But when two or more people want to access data concurrently, various problems can arise.
Assume person A wants to read the contents of a file, which says “2”, and use that for something. At the same time, person B wants to change the value in that file to “4”. Now the problem is deciding which to allow first, and what value A sees.
Databases involve two basic locks, shared and exclusive locks. Shared locks just share the lock between various processes. If you’re just reading data, you request a shared lock, so that other process or transactions can read the data too. This promotes parallelism, resulting in a significant performance boost. Problems can arise if at least one process wants to modify that data (others may or may not).
Still with me? Good, now we’re finally getting to the Haswell part.
I’m going to limit the explanation to multi-core CPUs. Each core has a separate “execution thread”. Think of a thread as a path of execution, more threads means that a processor can handle more programs simultaneously. A processor with “hyper threading” implements two execution threads per core.
A program may be able to utilise multiple threads simultaneously as well. Each program works with a certain section of memory, which contains certain data that the program’s working with. Database principals apply almost directly here, if more than one thread wants to access a certain memory location, it needs to lock that memory section to itself.
With Haswell, Intel introduced transactional memory extensions (TSX) a part of the x86 ISA (as an extension). This allows the CPU to handle memory locks, making it more efficient and increasing performance.
TSX comes in two forms, Hardware Lock Elision and Restricted Transactional Memory. HLE instructions are backwards compatible with older CPUs, where they’re simply ignored. RTM requires TSX to be implemented before it’ll run, and is incompatible with older CPUs.
So now the question is, should you care whether your CPU has it or not? Are -K series Haswell chips worth buying, giving their already limited overclocking potential?
For TSX to be useful, developers must implement compatible instructions in hardware first. If people don’t have chips that can use TSX, why spend precious development time on the feature? Well, my feeling is that going forward, developers might end up implementing HLE, since older CPUs don’t suffer from its inclusion. And in that light, it may make sense to favour a TSX capable CPU over one that’s not. Basically, I’m not recommending the -K series parts this generation, and I’d ask you to get a TSX capable CPU in the price range you’re looking to buy in if it’s available (and you’re buying Intel).

***
Now, recover Text from a Crashed page
Akshit Goyal
With the pathetic broadband penetration that most parts of India have been blessed with, it happens all too often that you write down a long ream of text onto a form you were filling up (remember that statement of purpose you just wrote) and as soon as you hit ‘submit’, the page crashes. It may even happen that you accidentally hit ‘backspace’ or ‘refresh’ the page, only to find all that typed stuff lost.
Well, if you don’t close your browser, there’s a workaround to recover your data. If you download this hex editing utility called HxD, and open the hex file for your browser exe file, you just need to search for the words you were typing (some of them). You’ll find a string of text that you typed that contained those words from the directory, where you can copy the entire entry into a Notepad file, and paste it right back onto your form. Great, right? We thought so, too.
If you’re using Google Chrome, though, this might be harder, since that browser uses several processes to run. If so, you’ll have to look through every process file. You could also download and install the Lazarus extension, which saves everything you fill up and write on Chrome. It’s also available for other browsers!

***
The Internet Time Machine
Anjishnu Kumar
Google is the undisputed world champion when it comes to internet search, owning around two-thirds of the world’s userbase. The behemoth engine keeps adding new features to its arsenal.
Nevertheless, there are several niche search engines that are able to provide features that Google search cannot.
One of the most interesting of these is The Wayback Engine. Run by Archive.org, the Wayback Machine is the ultimate tool for websites that Google cannot find.
Google find them, because they don’t exist, of course.
The Wayback Machine (at http://archive.org/web/web.php) contains a vast database containing links to websites that have long since been deleted or overridden. The Wayback Machine hosts over 350 billion web pages— over two PetaBytes of Data that is 2000 Terabytes.
I tested out the internet time machine by going back to 2001 and surfing the controversial pioneering music site—Napster.com — and listening to country music from the turn of the century.
It’s surprising how many old fan sites can be found using the portal. It really feels like taking a time machine back to 2001, when you look at the original versions of the most popular web-pages of today.
A must see for the new generation, especially those that started surfing the internet only in the second half of the 2000’s.
What are your favourite old and defunct webpages on The Wayback Machine?
Let us know more on www.facebook.com/TechChronicle.

Post new comment

<form action="/comment/reply/242998" accept-charset="UTF-8" method="post" id="comment-form"> <div><div class="form-item" id="edit-name-wrapper"> <label for="edit-name">Your name: <span class="form-required" title="This field is required.">*</span></label> <input type="text" maxlength="60" name="name" id="edit-name" size="30" value="Reader" class="form-text required" /> </div> <div class="form-item" id="edit-mail-wrapper"> <label for="edit-mail">E-Mail Address: <span class="form-required" title="This field is required.">*</span></label> <input type="text" maxlength="64" name="mail" id="edit-mail" size="30" value="" class="form-text required" /> <div class="description">The content of this field is kept private and will not be shown publicly.</div> </div> <div class="form-item" id="edit-comment-wrapper"> <label for="edit-comment">Comment: <span class="form-required" title="This field is required.">*</span></label> <textarea cols="60" rows="15" name="comment" id="edit-comment" class="form-textarea resizable required"></textarea> </div> <fieldset class=" collapsible collapsed"><legend>Input format</legend><div class="form-item" id="edit-format-1-wrapper"> <label class="option" for="edit-format-1"><input type="radio" id="edit-format-1" name="format" value="1" class="form-radio" /> Filtered HTML</label> <div class="description"><ul class="tips"><li>Web page addresses and e-mail addresses turn into links automatically.</li><li>Allowed HTML tags: &lt;a&gt; &lt;em&gt; &lt;strong&gt; &lt;cite&gt; &lt;code&gt; &lt;ul&gt; &lt;ol&gt; &lt;li&gt; &lt;dl&gt; &lt;dt&gt; &lt;dd&gt;</li><li>Lines and paragraphs break automatically.</li></ul></div> </div> <div class="form-item" id="edit-format-2-wrapper"> <label class="option" for="edit-format-2"><input type="radio" id="edit-format-2" name="format" value="2" checked="checked" class="form-radio" /> Full HTML</label> <div class="description"><ul class="tips"><li>Web page addresses and e-mail addresses turn into links automatically.</li><li>Lines and paragraphs break automatically.</li></ul></div> </div> </fieldset> <input type="hidden" name="form_build_id" id="form-88c2494e87b6e3d3aa1a57d614a5bc0f" value="form-88c2494e87b6e3d3aa1a57d614a5bc0f" /> <input type="hidden" name="form_id" id="edit-comment-form" value="comment_form" /> <fieldset class="captcha"><legend>CAPTCHA</legend><div class="description">This question is for testing whether you are a human visitor and to prevent automated spam submissions.</div><input type="hidden" name="captcha_sid" id="edit-captcha-sid" value="90935278" /> <input type="hidden" name="captcha_response" id="edit-captcha-response" value="NLPCaptcha" /> <div class="form-item"> <div id="nlpcaptcha_ajax_api_container"><script type="text/javascript"> var NLPOptions = {key:'c4823cf77a2526b0fba265e2af75c1b5'};</script><script type="text/javascript" src="http://call.nlpcaptcha.in/js/captcha.js" ></script></div> </div> </fieldset> <span class="btn-left"><span class="btn-right"><input type="submit" name="op" id="edit-submit" value="Save" class="form-submit" /></span></span> </div></form>

No Articles Found

No Articles Found

No Articles Found

I want to begin with a little story that was told to me by a leading executive at Aptech. He was exercising in a gym with a lot of younger people.

Shekhar Kapur’s Bandit Queen didn’t make the cut. Neither did Shaji Karun’s Piravi, which bagged 31 international awards.