jAbLoK

blog už dávno nejen o javě

Posts Tagged ‘perl

Java, I/O a performance?

s 17 komentářů

Vezměme si jednoduchý kousek kódu, který po řádcích čte data ze standardního vstupu a bez velkých cirátů je přeposílá na standardní výstup:

import java.io.*;
public class StreamEcho {
   public static void main(String[] args) throws Exception {
      BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
      for (String line = br.readLine(); line != null; line = br.readLine()) {
         System.out.println(line);
      }
   }
}

Teď si vezměme perlový ekvivalent:

#!/usr/bin/perl -w

use strict;

while (<STDIN>) {
   print;
}

A nakonec oběma verzemi prožeňte pár GB textových dat (data napřed něčím přečtěte jen tak, ať se v obou případech využívá disková cache). Taky vám perlová verze běží třikrát rychleji? Co s tím?

Aktualizace: podle komentářů důvodem bude hlavně konverze do Unicode a zpět, kterou se perlový kód narozdíl od Javy neobtěžuje (zmínili Zamboch a Petr Holík). Další rozdíl může být v tom, že System.out.println pokaždé provede flush (zmínil podlesh). Díky všem zúčastněným diskutérům!

Written by Pavel Kolesnikov

červen 17, 2009 at 3:50 pm

Zasláno do Java

Tagged with , ,

Can Your Programming Language Do This?

without comments

… se jmenuje článek od Joela Spolskeho, kde autor vysvětluje základní myšlenku Map/Reduce (tedy převést problém na paralelizovatelné zpracovávání seznamů) na JavaScriptu.

Lispu neznaje, první odpověď, která mě na otázku v nadpisu napadla, byla: no jo, perl :-)

Javu samotnou hanět nezačnu ani náhodou, nicméně na Joelově stížnosti na “Java-only” vzdělávání něco bude.

Written by Pavel Kolesnikov

květen 5, 2008 at 9:45 dop.

Zasláno do Tech

Tagged with , , ,