Comparing traditional grids with high-performance computing

Traditionally, high performance computing was carried out by specialized hardware and software working together to produce a highly optimized environment. Grids are beginning to change that, by removing the need for the specialized elements while enabling the spreading of the work across a wider range of hardware, software, and networks. A new article takes a closer look at the two solutions, and how they are converging.From the article introduction:

Parallel computing is a methodology for designing applications designed to work within large parallel computing environments. In a grid system, the execution of an operation or equation is geared toward providing a structure for executing tasks in parallel, where the order in which the work units are executed and received is not sequential and not reliant on previous code iterations. While, overall, the models of these two systems — parallel computing and grids — are converging, the traditional programming models of these two systems remain different. In this article, we will look at parallel computing, grids, and their convergence.

Read Comparing traditional grids with high-performance computing.

System Administrators Toolkit: Monitoring disk space and usage

The next article in the System Administrators Toolkit series, this time on monitoring disk space and disk usage by users, is available at IBM developerWorks. This one focuses on finding out your disk storage, where it is being used, finding out who is using it, and, when necessary, controlling the usage through the quota system. From the developerWorks preview:

Look at methods for determining disk usage across multiple UNIX systems and how to create a simple warning system to alert you of potential problems. Keeping an eye on your file systems and ensuring they don’t fill up is a trivial, but vital process in the day-to-day management of your UNIX systems. In this article, you’ll look at methods for keeping an eye on disk space, discovering which files, users, or applications are using up the most space, and how to make use of quotas and other solutions to find the information you need.

Read System Administrators Toolkit: Monitoring disk space and usage.

System Administrators Toolkit: Monitoring a slow system

When your Unix/Linux system starts going slowly, you need to find out why, and quickly, what is going on. That’s the focus of my new SAT piece: Monitoring a slow system.From the intro:

When your UNIX system runs slow, it is vital that you discover what the problem is as quickly as possible so you can get your system back into the normal operating mode. There are many causes for a slow system, but actually identifying the problem can be exceedingly difficult. In this article, study examples of how to identify and diagnose the cause of your slow running UNIX system to get your machine running properly again.

Read the full article.

MediaWiki Review

The latest in my reviews of hosting provider open source software is available at Free Software Magazine.You can read the full review here.Wikipedia is a Wiki – basically a information storage engine that works entirely through a web interface. I describe it more succinctly in the article:

A Wiki – of which MediaWiki is one of the most widely used and best known – provides a simple, web-based environment that enables users to collaborate and provide and share information. Wikis are not about discussions, and they are not about regular articles or posts, like a blog.

I have a number of installations, including one that I use to record and document the internal systems here. A companion blog documents changes. There’ll be more about that over on MCslp Coalface soon.

Writing text parsers with yacc and lex

Lex and yacc are two tools that you may be aware of, but have maybe never used. They are key components to compilers, configuration tools and many different languages, where the ability to parse text and generate some other output (assembly code, or simply to understand the contents). To explain how the system works, I have a new tutorial at IBM developerWorks. Entitle Writing text parsers with yac and lex, the tutorial primarily focuses on how the two tools work. To demonstrate the significance of precedence (order of execution) and structure, I use calculators as the main example, before moving on to how to parse and understand text. You can read the article through this link, but you may also want to use the additional examples that I placed onto MCslp Coalface.There are two follow-up articles:

These demonstrate how you can modify the output generated by, for example, an RPN parser so that it outputs normal equations, and vice versa. There’s an example in the tutorial the covers shows how you can link these two together.

Sun Ultra 3 Mobile Workstation review

My review of the Sun Ultra 3 Mobile Workstation had made it into Issue 11 of Free Software Magazine.Here’s a taster:

Sun have made some headlines in recent months through the release of their Ultra 20 workstation and a number of new servers based on the AMD CPUs. For some this is seen as major change of direction for a company that is well known for the use (and continued interest and development) of the SPARC (Scalable Processor Architecture) CPU. With so many new machines being based on the AMD CPU it will be surprising to some that Sun’s new mobile units are based on SPARC technology.The Sun Ultra 3 Mobile Workstation is based an 64-bit UltraSPARC CPU. There are two main models, a 15″ unit that comes with a UltraSPARC IIi CPU at 550 or 650MHz, and a 17″ model with a 1.2GHz UltraSPARC IIIi CPU. Both are standard CPUs-these are not cut down or restricted versions designed to work within a laptop-and that is a key parameter for identifying the target market for the unit.

Read the full article.If you don’t get the vibes, I like this machine, and Solaris as a laptop operating system is pretty good too. In fact, I’ve start up a new blog, Laptop Solaris to talk about my experiences with this machine and Solaris on a laptop in general.

Apache Session Management Within Dynamic Sites

As a follow on to an earlier piece about session management natively in Apache, I’ve written a follow up that looks more closely at the issue of developing sites that use cookies for ID and session management. In this article, I cover the mechanics, internals and security of the cookie system, and look at how to use cookies within Perl CGI scripts. Here’s the intro from the piece:

As Web sites get more complicated and more dynamic, developers want to give users a more cohesive environment. This cohesion can provide all sorts of functionality, from a simple method of tracking a shopping basket to providing full-blown customization of stories, templates, and information shown to users as they use the Web site. The key to this system is the session – a unique identifier that enables developers to identify users, either for relatively short periods (e.g., in shopping baskets) or longer (full customization).In a previous article “Session Tracking with Apache,” we described how to use cookies and the sessions system within Apache to track user access for the purposes of monitoring site usage in the logs and recording which pages were viewed. We can adapt the same basic principles – primarily cookies – through programmable components, such as Perl and PHP to provide customized Web sites.This article will look at how Apache can help with session management and how that information can be used with Perl and PHP scripts.

Read on for the full article.

Building a grid with web Services, Part 5

Part 5 of the Building a grid with Web services series is now available on the IBM developerWorks site. In this part we cover the management and flow of information and work through the grid. This is the part where movies submitted to the grid are routed through to a suitable storage node according to their size and available storage capacity. Here’s the official blurb:

Storing movies across a grid is more than just a case of handling the security and effective transfer of the information between system components. For the system to be an effective grid, you need to be able to manage the individual components and processes that make up the grid solution.For example, when submitting a movie into the grid, there is more to the process than just transferring the movie. The grid manager must make a decision about which grid node stores the movie, then record the information so the movie can be located again when it is requested. You may also want to control individual nodes — for example, when upgrading the node or storage, you may want to disable it while you update the available storage locations. All of these items will be tackled in this tutorial.

And you may want to take a look at the previous parts before leaping into part 5:

You can then feel free to read Building a grid with web services, Part 5.

StarOffice 8 Review – Office Killer?

LinuxPlanet have just recently published my very detailed StarOffice 8 review. To summarize, I like it, and with a few caveats, it gives Microsoft Office a run for its money. The article is spread over a number pages, with screenshots, a brief TOC is below:

  1. Alternatives to Microsoft Office
  2. Availability
  3. Installation
  4. StarOffice Writer
  5. StarOffice Calc
  6. StarOffice Impress
  7. StarOffice Draw
  8. StarOffice Base
  9. Office Killer?

You can read the full article at LinuxPlanet.

System Administrators Toolkit: Process administration tricks

I’ve just started a new series at IBM developerWorks looking at UNIX related system administration tricks. The aim is to cover some generic tips and help on a particular area (for example, process administration), and not only handle the tricks on different platforms, but look at ways of getting the same information through a script or alias if you manage UNIX machines in a heterogeneous network. In the first, Process Adminsistration, I look at the basics of using ps, how to get the same information out of different ps tools in different Unix variants, and how to kill, manage, and organize multiple processes within a shell.