Slash Boxes
NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.

All the Perl that's Practical to Extract and Report

use Perl Log In

Log In

[ Create a new account ]

acme (189)

  (email not shown publicly)

Leon Brocard (aka acme) is an orange-loving Perl eurohacker with many varied contributions to the Perl community, including the GraphViz module on the CPAN. YAPC::Europe was all his fault. He is still looking for a Perl Monger group he can start which begins with the letter 'D'.

Journal of acme (189)

Monday November 01, 2004
01:36 PM

Mac OS X and High Performance Heterogenous Environments

[ #21633 ]
Today I went to a technology briefing in London about Mac OS X and High Performance Heterogenous Environments. It wasn't really that much about high performance, which was a shame, but they did have free food and I got to see Josette. Random notes, make of it what you will. I'm quite excited about launchd and ASL...

UKUUG/Apple Technology Briefing
Mac OS X and High Performance Heterogeneous Environments
1st November 2004

About a hundred delegates, all male

OS X within Particle Physics
Sabah Salih

Farm of XServes, 6T diskspace
SMall introduction to particle physics
Invovled in lots of experiments (eg D0 experiment: 3000 scietists, proton - antiproton, ATLAS: 1800 physicists, 34 countries)
A year's worth of collider data and physics analysis ~ 1 petabyte
LCG Grid Operations Centre (computing grid 7269 CPUs, 6559 T storage, running Linux atm, hopefully in 2007 MacOS X, mostly for hardware reliability)
LHC will create 12-14 Pb o f data, need ~70k processors, 500 Gigabit/s networks, a million events a second - only keep about 10%

UK 2004 (2395 CPU (kSL2000), 369 TB) 2007
(9965 CPU, 2285 TB)

So they need 285 Xserves / year / experiment (50k EU wide by 2007)

Advantages of OS X: UNIX, MS Office, robust, stable

Applications: AFS (global data), Mathematica, GNU compilers, iChat (for remote meetings), Major language, RPM, xmgrace, LaTeX & Lyx, Fugu (GUI scp client), Aqua Emacs, ImageMagick

HEP Software
General: CERN Library, Root (analysis), Geant4 (simulates detectors), LHAPDF, Hdcay, Pythia, ktjet, ExHuME, CPX+, pomwig (Monte Carlo generator), HERWIG
LHC: ALICE (offline), OS X CMS (Iguana, Orca), ATLAS (CTM, Atlantis), LHCb (Gaudi, Panoramx, Da Vinci), LCG (compute grid, SEAL, PI)
Most of these are on Fink ;-)

Code is being moved from Fortran -> C++

Linear colliders: SIMDET 4.0

Grid tools: Globus, pyGlobus, Globus Job Manager, Condor, LSCdataFind. Xgrid.

OS X is rapidly becomming accepted as an OS for HEP, but gaps remain (right now only 50% of their software works under OS X, next year he reckons 100% due to mindshare).

Discussion: little/big-endian issues: write portable code. Virginia Tech clusster was influential. Backups at CERN are tapes (but he prefers disks).

Cocoa API
NS prefix from NeXTSTEP
Originally usuable only via Objective-C, now lots of languages
Developer Tools: XCode, Interface Bulder
Built a webbrowser with webcore without writing any code, quite neat
Built a UNIX-command runner
No built-in unit testing tools?

Mac OS X, A UNIX geek's perspective
Jordan Hubbard

"It's an onion, not a potato"
Panther is about 60% open source
UNIX is the right technology, active, portable, influential
12 million OS X users, 12k applications
Darwin FreeBSD 4.8-based (not the unified buffer cache) + clustered IO tuning
Network Reachability APIs
Mach Kernel: based on Mach 3
Open Directory
Quartz leverages GPU, good Python bindings
"OpenGL: Keeping the world safe from DirextX"
Core Audio / Core MIDI. Guaranteed latency -> Garageband.
Aqua, X11 (Xfree86 4.4, now syncing with
Popular applications
Challenges: authentication (/etc/password, boo), UNIX group model is obsolete, uid obsolete and insufficient (not big enough, doesn't have namespaces - GUUID coming), smart cards, Windows/Kerberos interop, ACLs (hard to use, iterop, POSIX Extended Attributes (resource forks!))
API Stability: "Hey guys, just recompile your code" is NOT an evolutionary API strategy. Need to be clearly classified. Shared library version numbers aren't proving sufficient (or linker toolchain). Solaris version symbols?
Restricted Kernel APIs are essential: "/dev/kmem should die"
Challenge UI: X still sucks. No decent high-level APIs (apart from libc). Scripting languages might help with portability. C# does not suck that bad.
Challenge: Administration, weird config files etc.
Challenge: Power vs Ease of use, eg single-button mouse, case-insensitivity
Challenge: OSS community: communication


64bit (16 exabytes of addressable virtual memoory)
Upgraded kernel + userland FreeBSD 5.x
Spotlight from the command line
SQLite-based data persistence (Core Data)
Xgrid built in
Launchd is kinda init, mach_init, xinetd, cron, System Starter (seems very nice indeed, drop XML files into a dir saying I want to receive network connects on this port, start at this time, when load is so low etc)
Apple System Logger: backwards compatible with sylog, output plugins, client- & server-side filters, unified log message format and encoding, CLI
Perl, python, tcl ruby all updated
"Looking at UI portability solution for Perl too"?
AT&T Korn shell is now bundled
dlopen(), poll() now native
Better Windows interop
Dashboard "Bring to desktop accessory hacking what Perl brought to the command  line"
Tiger "First Half of 2005"


launchd, ASL will be opensourced
netinfo is dying
rendezvous hasn't been renamed yet (need to find a new French word)
"Anything that might potentially confused grandma is shot down and burried"
Tiger has nothing to reduce reboots during updates
Prebinding should go away in future
"I'd like to see more paradigm shifts"

TrustedBSD MAC Framework on FreeBSD and Darwin
Robert Watson
(Errr, I hacked code at this point, no notes sorry)

The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
More | Login | Reply
Loading... please wait.