Friday, February 22, 2013

Go, data races and combining

Hi,

I continue my work on speeding up Go language. The next major release will feature faster parallel garbage collector, goroutine blocking profiler (enabled with -blockprofile flag) and a lot of other yummy features. Last but not least -- builtin data race detector. Yay! Just add -race flag.

The race detector is based on our ThreadSanitizer technology, which is initially developed for C/C++. Now that both C and C++ standards have multithreading support, data races officially banned as "undefined behavior". You can read my essay on data race here.

If you are subscribed to this blog, you are probably interested in synchronization and concurrency stuff. It's not that I am writing a lot lately, but here is at least something new -- Combiner/Aggregator Synchronization Primitive.

Best

39 comments:

  1. Combiner/Aggregator seems to share some conceptual underpinnings with Oyama's technique (http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.159.183) and more recent work by Fatouro et al (http://dx.doi.org/10.1145/2145816.2145849)

    Regards, -Dave

    ReplyDelete
  2. Thanks for the links!
    I am sure there must be some analogous work, because the idea is somewhat obvious. But I am eager to see whether they do something differently than others.

    ReplyDelete
  3. Small Business Phone Service have come a long way in a relatively short period of time. No longer do you have to pay a lot of money to install cumbersome, expensive systems - and yet, you have access to more flexibility, more features, and better sound quality than ever.

    ReplyDelete
  4. Hello Dmitry, thanks for the yesterdays wonderful lection on the Go internals!


    Yesterday evening, an interesting question was raise that may worth a bit more attention than it got during the short meeting timespan. It was not me who raised it, but after the lecture it made me think a lot on the question: why indeed the goroutines are not (at least optionally) kernel-scheduled?

    Why not use and/or add the OS-available means for the fiber switching? There is the WinAPI support for the Fibers on Windows; I don't recall any complete fiber support on Linux, but, provided the Google resources, it probably could've been added in a way usable not just by Go.

    But this potentially would make it possible to implement much better goroutine scheduling, cpu affinity (even up to increasing the chances of a goroutine to be re-executed on a particular CPU, not just in the particular thread), some insane stuff like smart handling of the syscall blocking (I can even imagine that a `read()` attempt may switch the goroutine if the data is going to be read from the physical file, but gets back to the same goroutine immediately if the data is available in the disk cache)...

    I believe, the primary answer will be that every such feature needs a person who pushes it and writes the code; but I am mostly interested if there are any ideological/political obstacles that definitely block it from happen someday.

    Hope this thought doesn't sound too nooby and theoretical, and thanks in advance if you find my question worths your time to answer it.

    ReplyDelete
  5. Please post this question to golang-nuts@

    ReplyDelete
  6. Hi Dmitry,

    I would like to know if I can use the code given in the following link
    http://www.1024cores.net/home/lock-free-algorithms/queues/unbounded-spsc-queue

    in a commercial product.

    Kindly let me know the license terms if any

    ReplyDelete
  7. Grading is broken down by domain so you can quickly pinpoint areas to review. alpha-x.ru Since you play against the computer, there's no need to wait for your friends to make a move.

    ReplyDelete
  8. Your playlist is selected to let you listen to new music while reading your daily horoscope. download manuals The software itself has a fairly primitive interface, with few options, and only one available set of chess pieces.

    ReplyDelete
  9. Pin-yin Practice Familiarize you with the different combinations of consonants and vowels and their pronunciations. downlodable tv shows New game mode: Red Bull Street Style 5 new locations Improved device support Fixed text strings Improved difficulty.

    ReplyDelete
  10. Once on the vehicle, tap the stop pole at your destination to see how long it will take to get there. This page. To play Multiplayer both phones must be running Trivia Wars.

    ReplyDelete
  11. Swimming, track, cross country, cycling, cross-country skiing, rowing, etc. download games The paid version of MobileMonet provides higher resolution output, multiple undo and more creative control.

    ReplyDelete
  12. Creating a shopping list for new nail polish or managing your own collection has never been so easy. downlodable videos Printing and converting batches of SolidWorks documents are some of the most popular tasks included in the program.

    ReplyDelete
  13. And even though we're convinced this app is the best way to master Modern Warfare 3, we're constantly trying to improve. downlodable games Next, you'll log room types, sizes (for more accurate quotes), and time estimates per room.

    ReplyDelete
  14. Youll be able to manage maps on your device to save space. http://novico.ru From O&'Reilly Media: By Baron Schwartz, Peter Zaitsev, Vadim Tkachenko, Jeremy D.

    ReplyDelete
  15. Johnny Appleseed to The Appleseed Family, for example To place your order, simply enter your Apple ID password In the U. laserjet 5200n driver About TEDxIn the spirit of "ideas worth spreading," TED has created TEDx.

    ReplyDelete
  16. On the heels of this devastation, the Black King has embarked on a quest for absolute power and enslaved citizens of the Fairy World. http://gagarina27k6.ru If you get an average ratio of 25% and higher on your tests, you obviously perceive more than your five senses provide you with.

    ReplyDelete
  17. You can open various version of PDF files to edit in two different editing way. downloadingnow.gdn Los Angeles weather application displays following weather Data.

    ReplyDelete
  18. No excuses - start learning and speaking British English today. downloadfreefilesfromblog.top It enables an administrator to be free to monitor and manage a Thecus NAS anytime and anywhere.

    ReplyDelete
  19. Solomon's son Rehoboam vows to rule harshly, and the northern tribes secede, forming the kingdom of Israel. http://downloadfreematerialsplease.gdn Discover French Tarot, a very exciting trick taking-game, very popular in France and French speaking countries.

    ReplyDelete
  20. Please do not leave them in your reviews, as we will not be able to reach you to solve the problem. iwanttodownload.gdn Rejigged trophy icon size and positioning for a more pleasant, usable UI.

    ReplyDelete
  21. Press and hold to make the increment and decrement buttons repeat. gooddownloadfilesonline.us It has never been easier and quicker to determine the cheapest way to travel around London.

    ReplyDelete
  22. HTC Nexus OneT-Mobile G1Motorola XoomSo far there have not been any devices reported as not working properly with the app. bestdownloadwarezarchive.us Polyhedra are organized in simple list divided by categories.

    ReplyDelete
  23. Mostly information stores in internet via text, audio or video files. topdownloadfilesfast.us If you dont want his cold hook tapping on your shoulder, help him lurch down the road to oblivion.

    ReplyDelete
  24. Furthermore, online administrations have likewise made it simpler and speedier to get a loan credit, as the entire procedure is done electronically. Another administration that moneylenders give to their borrowers is the overnight loan benefit, which guarantees that the advance sum would be credited to the bank account of the borrower inside 24 hours. Need any help to visit here Cash Advances corona

    ReplyDelete
  25. All Assignment Help is a web portal where students get help in making assignments for all the subjects, with the help of our experts. You will get 100% plagiarism free assignment. Expert’s consultation is also available for students. If they have any query they can contact with our experts anytime.
    Law assignment help
    Programming Assignment help

    ReplyDelete
  26. This is where you might have started your search for assignment help.The previous consumers give their feedback on the website to let the other users know about the quality of their service. For example, if you go to the AllAssignmentHelp.com reviews, you can get to know the opinion of different users about their services. You can also check other websites to compare and select the best service for you.<a href="http://www.assignmentservicerating.com/myassignmenthelp-com-reviews my assignment help </a>

    ReplyDelete
  27. Assignment help online ireland is top ranked assignment help of ireland and students of top university are aware of this service because, they are assignment support from our expert team. Get best trinity college dublin past papers services and submit your assignment on time.

    ReplyDelete
  28. Cheap assignment help is very popular in singapore and here our assignment writer provides you Singapore Assignment help support services at discounted rate.

    ReplyDelete
  29. BDC offers turnkey financing and loans for entrepreneurs, Nevada Loans designed to protect your cash flow and help grow your business.

    ReplyDelete
  30. Currently, I am working on ThreadSanitizer, a data race detector for C/C++ and ... Go memory model and any other relevant combination of standards guaranteed payday loans Wichita KS So, if a data race involves non-atomic writes, it always can go wrong.

    ReplyDelete
  31. Assignmenthelp.com is not only helping students in acquiring higher grades but also encourage them to acquire considerable knowledge in the subjects. Our new product development assignment help are inscribed by management experts and business analysts having years of experience in management field. MyAssignmenthelp.com is highly acknowledged by the community of University students due to its commitment towards customers and service.

    ReplyDelete
  32. This post is not just informative but impressive also. The post is so convincing that it created an urge to choose Assignment Help, services. You can email us at Info@Myassignmenthelpau.Com or Phone Number: +61-2-8005-8227

    ReplyDelete