Intel Unveils 1 Teraflop Chip With 50-plus Cores

Whoa. Can’t wait to get my hands on one of these.

Stop Asking "How Was Your Day?"

Metronome Real-Time Java Papers

 David F. Bacon, Perry Cheng, and V.T. Rajan, A Real-time Garbage Collector with Low Overhead and Consistent Utilization. Conference Record of the Thirtieth ACM Symposium on Principles of Programming Languages (New Orleans, Louisiana, January 2003), pp. 285-298.  PDF
This is the canonical paper which describes the Metronome garbage collection algorithm, analysis, and implementation.

 David F. Bacon, Real-time Garbage Collection. ACM Queue, volume 5 issue 1 (February 2007), pp. 40-49.  PDF
This is a more accessible but less detailed description of the Metronome technology

David F. Bacon, Perry Cheng, David Grove, Michael Hind, V.T. Rajan, Eran Yahav, Matthias Hauswirth, Christoph Kirsch, Daniel Spoonhower, and Martin T. Vechev, High-level Real-time Programming in Java. Proceedings of the Fifth ACM International Conference on Embedded Software (Jersey City, New Jersey, September 2005), pp. 68-78. PDF

Daniel Frampton, David F. Bacon, Perry Cheng, and David Grove, –> Generational Real-time Garbage Collection: A Three Part Invention for Young Objects –>. Proceedings of the Twenty-First European Conference on Object-Oriented Programming, (Berlin, Germany, July 2007), Lecture Notes in Computer Science (to appear).  PDF –>

Collaborative Filtering Research Papers

sort by date added, data published, title | add paper
Collaborative Filtering Research Papers

Summary: 64 abstracts with links to the full papers and reader comments.

Good stuff on here.

Built With Bootstrap

Very cool stuff! I’m using Bootstrap for a project I’m working on now and I can also say its very quick to get up a nice looking site without a lot of hassle.

Redesigning the Country Selector

During our recent checkout study we found several usability issues when using a drop-down for your country selector: a lack of overview, unclear sorting, scrolling issues, inconsistent UIs, a lack of context on mobile devices, and finally, they break the user’s tab-flow.

So we took it upon ourselves to redesign the country selector.

Wow, this is really nice!

Microkernel Construction Lecture Notes

Table of Contents

Preface
1. Overview
Monolithic Kernels
Microkernel-Based Systems
Historic Attempts
Basic Abstractions and Mechanisms
2. Threads and Thread Switching
Threads
Switching Threads
Kernel Stack Models
Per-Processor Kernel Stack
Per-Thread Kernel Stack
Sample Code
3. System Calls
Traditional System Calls on x86
Fast System Calls on x86
Reconciling Stack Layouts
Returning From System Calls
4. TCBs
Locating TCBs
Locating the TCB of the Current Thread
Locating the TCB of a Thread by Thread ID
Locating the TCB of the Next Ready-to-Run Thread
0-Mapping-Trick
Address Space Layout
Address Space Regions
Regions in the Kernel Address Space
Synchronization of the Kernel Address Space
Processor-Specific Data
5. IPC Functionality and Interface
Synchronous Communication
Communication Primitives
Message Types
Timeouts
Send Timeout
Receive Timeout
Transfer Timeout
Timeout Encoding
Encoding of IPC Parameters
Operation and Addresses
Deceiving IPC and Proxies
Timeouts
Message Content
Receive Buffers
IPC Result
Virtual Registers and the UTCB
6. IPC Implementation
IPC and Scheduling
General Implementation of Short IPC
Fast Path IPC
Performance Considerations
Combining Fast and Slow Paths
Long IPC
String IPC
Copy In/Copy Out
Temporary Mapping Area
Management of the Temporary Mapping Area
Temporary Mapping Area on Multi-Processor Machines
7. Dispatching
Scheduling in L4
Optimizations
Dispatching Mechanism
Lazy Dispatching
Timeouts
8. Virtual Memory Mapping
9. Small Spaces
10. Local IPC
11. Interrupt and Exception Handling
12. Security
Index
A. Communication Spaces

Deploy ALL the Things

Operations is an interesting word. Outside of the field of IT it means something completely different than everywhere else in the business world. According to Wikipedia:

Business operations encompasses three fundamental management imperatives that collectively aim to maximize value harvested from business assets

  • Generate recurring income

  • Increase the value of the business assets

  • Secure the income and value of the business

IT operations traditionally does nothing in that regard. Instead IT operations has become about cock blocking and being greybeareded gatekeepers who always say “No” regardless of the question. We shunt the responsibility off to the development staff and then, in some sick game of ‘fuck you’, we do all we can to prevent the code from going live. This is unsustainable; counter-productive; and in a random twist of fate, self destructive.

Some wise wisdom right here.

Everything I Ever Learned About JVM Performance Tuning @Twitter

Everything I Ever Learned About JVM Performance Tuning @Twitter
View more presentations from aszegedi

FUTEX_WAIT Hangs Java on Linux

Ok, I’m documenting this for those that hit this same problem. Is it taking a LONG time to run some Java app, making it seemingly hang? This happens  when running Ubuntu or any flavour of Linux in VMware or Virtual Box. I d/l a pre-made image of Ubuntu Server 9.10 from http://www.thoughtpolice.co.uk/vmware/, put JDK 1.6_18 on it, and went on with installing some app servers and other stuff for setting up a Hudson SWARM.

I attempt to start some Java procs, and they took a long time to start. I broke out strace to see what the hell was going on, and it seems that the procs were getting stuck in FUTEX_WAIT. Googling FUTEX_WAIT lead to many false solutions. Further examination of the strace pointed to some stuff happening in /dev/random just before the FUTUX_WAIT. On a hunch, I reconfigured the /dev/random like so:

rm /dev/random 

mknod -m 644 /dev/random c 1 9 

and VOILA! things started working normally. Hopefully, you get here via a google search and find this solution to save you a couple of hours of agony. 

This shit just cost me a month… wish I’d found this sooner.