Catch up on stories from the past week (and beyond) at the Slashdot story archive

 



Forgot your password?
typodupeerror

Comment Re:Favorite Acronym (Score 1) 412

The funny thing is, those jokes about Emacs being slow date back to the 80s. These days, I find that Emacs is about the fastest app to start on a modern Linux distribution.

The rest of userland has gotten fatter and fatter, but Emacs has stayed about the same.

Since the story asks for favorite things about Emacs, I will just add: Gnus. The best email app bar none.

Software

New Tools Available for Network-Centric Warfare 70

Reservoir Hill writes "MIT Technology Review reports that a new map-based application is the latest tool in the military's long-term plan to introduce what is sometimes called "network-centric warfare." The Tactical Ground Reporting System, or TIGR allows patrol leaders in Iraq to learn about city landmarks and past events and more than 1,500 junior officers in Iraq — about a fifth of patrol leaders — are using the map-centric application before going on patrol and adding new data to TIGR upon returning. By clicking on icons and lists, they can see the locations of key buildings, like mosques, schools, and hospitals, and retrieve information such as location data on past attacks, geotagged photos of houses and other buildings (taken with cameras equipped with Global Positioning System technology), and photos of suspected insurgents and neighborhood leaders. They can even listen to civilian interviews and watch videos of past maneuvers. "The ability ... to draw the route ... of your patrol that day and then to access the collective reports, media, analysis of the entire organization, is pretty powerful," says Major Patrick Michaelis. "It is a bit revolutionary from a military perspective when you think about it, using peer-based information to drive the next move. ... Normally we are used to our higher headquarters telling the patrol leader what he needs to think.""
Sci-Fi

Some Moray Eels Have Two Sets of Jaws 158

mikesd81 writes that the Mercury News reports that scientists at UC Davis have discovered that some eels have an extra set of jaws deep in their throats that launch forward into their mouths to help pull prey in. "'It looks like a funny pair of forceps with curved sharp teeth,' said evolutionary biologist Rita Mehta, lead author of the research, which appears Thursday in Nature. Before the discovery, scientists thought that all aquatic predators swallowed their prey using suction. By dropping the lower jaw and creating a flow of water into their mouths, they draw in the prey. The two species of moray eels studied by Mehta and Wainwright are the first examples of an alternative feeding method. Instead of sucking, one of these eels bites its prey with its primary set of teeth. It then draws the second set of teeth into its mouth by contracting long muscles. The secondary jaws clamp down on the prey, allowing the eel to move its primary jaws forward in a gulping motion to take in more of the prey. The two sets of jaws take turns until the whole animal has been swallowed." mikesd81 adds a link to a YouTube video of an eel eating, noting "If you look closely right around 34 seconds you can see what looks like the other set of jaws chewing."
United States

First Robotic Drone Squadron Deployed 772

coondoggie writes with a link to a Network World blog post on the world's first unmanned attack squadron. The US is deploying a full squadron of combat drones to Iraq this week. These armed and remotely controlled robots can be manipulated from on the ground in the field, or via satellite from thousands of miles away. "The MQ-9 Reaper is the Air Force's first hunter-killer unmanned aircraft. It is the big brother to the highly successful and sometimes controversial Predator aircraft, which General Atomics said this week had flown over 300,000 flight hours, with over 80% of that time spent in combat. The company said Predator series aircraft have flown an average of 8,200 hours per month over the past six months while maintaining the highest operational readiness rates in the U.S. military aircraft inventory. The MQ-9 Reaper is twice as fast as the Predator - it has a 900-horsepower turbo-prop engine, compared to the 119-horsepower Predator engine - and can carry far more ordnance - 14 Hellfire missiles as opposed to two."
The Courts

Electronic Frontier Foundation Sues Uri Geller 240

reversible physicist writes "The Electronic Frontier Foundation has sued spoon-bender Uri Geller for using 'baseless copyright claims' to silence critics who question his paranormal powers. Brian Sapient posted on YouTube a 14-minute excerpt from the 1993 PBS NOVA program 'Secrets of the Psychics,' in which skeptic James Randi says Geller's spoon-bending feats were simple tricks. YouTube took down the video after Geller complained — his lawyers claim that 10 seconds of the video are owned by Geller. A shorter excerpt of the video is still up on YouTube."
AMD

AMD's Barcelona to Outpace Intel by 50% 199

Gr8Apes writes "AMD is upping the performance numbers for Barcelona by stating that "Barcelona will have a 50% advantage over Clovertown in floating point applications and 20% in integer performance 'over the competition's highest-performing quad-core processor at the same frequency'". AMD also claims that the new 3.0 GHz Opterons beat comparable Intel Xeon 5100 series processors in three server-specific benchmarks (SPECint_rate_2006, SPECint_rate2006, SPECompM2001) by up to 24%."
News

Nobel Prize Winners Live Longer 144

anthemaniac writes "A new study finds those who won Nobel Prizes between 1901 and 1950 lived about 2 years longer than nominees who didn't win. The researchers conclude that the instantly conferred social status leads to health benefits. From the story: 'The research rules out the possibility that intervening prize-related money itself adds the years through improved prosperity.' If you're thinking of aiming for the prize, pick the right field. Nobel laureates in physics lived nearly a year longer than winners in chemistry."

Comment Re:Perl & mod_perl (Score 4, Informative) 44

Honestly a thorough performance comparison with other languages hasn't been completed. I've largely been basing performance estimates on the speed at which my own web applications execute (most pages are within the hundreds of transactions per second range) compared with what I've seen elsewhere.

I have started a more thorough performance test by converting the programs on the python vs java page (http://www.twistedmatrix.com/users/glyph/rant/pyt hon-vs-java.html) and the great language shootout page (http://www.bagley.org/~doug/shootout/) . A full suite of performance tests will be posted on the projectmoto site in the next couple days. In the meantime if anyone wants to run a performance test from the shootout page in moto now, follow these steps :

1) grab http://projectmoto.org/perftests.tar.gz . These are conversions of 11 of the tests into moto.
2) fix the value for N for tests in other languages downloaded from the shootout page (shootout tests have the number of iterations passed in)
3) compile and time the moto file with the following script:

set MOTONAME = "$1.moto";
set CNAME = "$1.c";
moto -c $MOTONAME > $CNAME;
gcc -I/usr/local/moto/include -I/usr/local/moto/mx/codex/util -I/usr/local/moto/mx/moto -D__MAIN__=main -DSHARED_MALLOC -O3 -o $1 $CNAME /usr/local/moto/mx/moto/libmx_moto.a /usr/local/moto/mx/codex/util/libmx_codex_util.a /usr/local/moto/lib/libcodex.a;
time ./$1 > out

Anyway, the performance picture for compiled moto pages currently looks like this :

Calls to functions / methods written in moto are made roughly 100 times faster in compiled moto pages than calls to functions or methods in perl, python or ruby and about 20 times faster than methods are called in Java. Part of this may be due to method inlining for small methods by gcc but this is one area where any compiled language is going to smoke an interpreted one. You can see this in the methcall, sieve, and fibo tests from the shootout page. Also, if gcc wants to optomize compiled moto code, more power too it. Its one of the reasons generating C is a good idea. C is virtually guaranteed to have more optimized compilers on more systems than any other language compiler or interpreter.

Array accesses in moto are 10 times faster in moto than they are in python or perl and about 40 times faster than in ruby. They are 2 times faster than in Java. The implementation of arrays in moto is still un-opimized and functions are called behind the scenes on array access leading me to believe I could get another 5-10 time speed boost here when that gets optimized. The biggest reason that arrays are still so much faster in moto than they are in perl, python, or ruby, is that these language don't even try to offer typed, bounded arrays, thus array access is a much more heavy weight operation. The counterpoint to this is that arrays in these languages are much more powerful. Moto, like Java, offers classes, like Vector and Stacks to do these sorts of dynamic operations. Moto may eventually have language level support for more dynamic sorts of arrays but they will be differentiated by type from the simple C/Java style arrays moto supports now. These results can be tested with the ary3 test from the shootout page.

Outputting "hello world" 100,000 times runs about twice as fast in compiled moto as in perl, and 4-5 times as fast as it does in ruby. This is at least partially due to output buffering in moto which happens by default. It runs about 50 times faster than in java but thats because System.out.println sucks

Regular expression matching and substitution in moto today is 10 or more times slower than Perl or languages that use the PCRE package. The implementation is not optimized and incomplete. I hope to one day use the libtre package for regexes giving moto the completeness and the speed of these other languages in this regard. The implementation of regexes in moto is currently a modified version of Ville Laurikari's TNFA algorithms. This does mean that I will never have a regex that takes me an exponential amount of time to match. It also means I will not support back-references in the regex ... but I never liked them anyway.

Inserting integers to and from a hash (IntHashtable in moto) is 30% faster than in Java 50% faster than in python or ruby and 3 times faster than in perl. The difference with Java is likely because my Hashtable accesses aren't synchronized, this test should be redone with a Hashmap.

Inserting objects into a Vector (adding dynamically onto an array in Perl, Python, and Ruby) is about the same as in Java, and 10-50% faster than in perl,python,and ruby . Behind the scenes perl, python, and ruby, are effectively calling the same sort of highly optimized C methods as moto and Java are. I figured native method invocation in moto would take roughly the same amount of time in moto as it does in the interpreted languages. But that wasn't exactly what was going on. Turns out the memory manager in moto isn't nearly as fast as it should be and allocation of all the objects to put into the vector is what eats up all the time. The objinst test from the shootout page (as well as any old profile of a compiled moto app) demonstrates this. Object allocation in moto, java, perl, python, and ruby take roughly the same amount of time. The memory manager in moto is to blame for this. It is completely home grown. It acts on an memory mapped file and uses splay trees for the free list. This is necessary in order to persist objects between page views on the 1.3.x versions of apache. Turns out this implementation is nowhere near as fast as system malloc. So much for long bearded algorithms. The memory manager will be swapped out in the future for apache 2 support where its likely thread safe versions of the system malloc will be used. This should be a great big speed boost to all parts of moto.

matrix multiplication is 10 times faster than in perl, python, or ruby ... but who cares

-Dave

BTW: Don't try these tests in the moto interpreter ... no one ever claimed that was fast :)

Slashdot Top Deals

"The eleventh commandment was `Thou Shalt Compute' or `Thou Shalt Not Compute' -- I forget which." -- Epigrams in Programming, ACM SIGPLAN Sept. 1982

Working...