From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Original-To: caml-list@yquem.inria.fr Delivered-To: caml-list@yquem.inria.fr Received: from mail1-relais-roc.national.inria.fr (mail1-relais-roc.national.inria.fr [192.134.164.82]) by yquem.inria.fr (Postfix) with ESMTP id C0E6ABBAF for ; Mon, 25 Oct 2010 05:42:47 +0200 (CEST) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AiACAGeZxEzRVdY0gWdsb2JhbAChVggVAQELCQoHEwMfoSKJWIIXhTMuiFcBAQMFhUMEik2Fbw X-IronPort-AV: E=Sophos;i="4.58,234,1286143200"; d="scan'208";a="84305638" Received: from mail-bw0-f52.google.com ([209.85.214.52]) by mail1-smtp-roc.national.inria.fr with ESMTP; 25 Oct 2010 05:42:47 +0200 Received: by bwz6 with SMTP id 6so2925714bwz.39 for ; Sun, 24 Oct 2010 20:42:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:received:in-reply-to :references:date:message-id:subject:from:to:cc:content-type :content-transfer-encoding; bh=OESgUCJH9RxWUDcUS8sQY67w/nYzsX4LsYK+SZlNCkw=; b=g08FyaI3GzAtnBgtn3OzAaIFbU8KQ/NvyCiop3CNwrmfg8aUlllr6KIXNLx2xBbDXB H3qVWyHF++Wc+bJ75BpfbT6gGZ8n/R95W5vx+8J02TcJ6SrWwMvQemS5LCV3cqAO0bKC Vsj2ArT340jceM301raWN+slcKR/9g+l2Dz6Q= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type:content-transfer-encoding; b=MT4upF8qjMtVo+eQHBKkWA5w1w0y7Cdmnv1XORqdIEcd2xky+abbD+JMcsYqBqOE8h s0oX/v/gYUEpPLe7lp6bA2el5K5IciMzfu1B7EsIL4310n9I+W4lPfJNgGZG73H9U5G6 5DEm6uqG1TuDATyDvDqqC1wQPi05JR3Vlx7YQ= MIME-Version: 1.0 Received: by 10.204.98.15 with SMTP id o15mr4544390bkn.136.1287978165687; Sun, 24 Oct 2010 20:42:45 -0700 (PDT) Received: by 10.204.46.140 with HTTP; Sun, 24 Oct 2010 20:42:45 -0700 (PDT) In-Reply-To: <20101024225037.GA8999@aurora> References: <044101cb7367$10f94b30$32ebe190$@com> <20101024225037.GA8999@aurora> Date: Sun, 24 Oct 2010 23:42:45 -0400 Message-ID: Subject: Re: [Caml-list] Asynchronous IO programming in OCaml From: Markus Mottl To: =?ISO-8859-1?Q?J=E9r=E9mie_Dimino?= Cc: Anil Madhavapeddy , Jon Harrop , caml-list@yquem.inria.fr Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable X-Spam: no; 0.00; ocaml:01 markus:01 mottl:01 markus:01 mottl:01 descriptors:01 ocaml:01 50,:98 wrote:01 caml-list:01 slightly:03 asynchronous:03 programming:03 experiments:03 benchmark:04 On Sun, Oct 24, 2010 at 18:50, J=E9r=E9mie Dimino wrot= e: > I made an implementation of lwt using libev [1]. I tested it with > ocsigen and ab but the result was always a bit better with select than > with epoll. That is why i did not replace select by libev in the main > branch. In fact i never found the source of any benchmark comparing > select to epoll on the web. The performance of select was also usually slightly better in my experiments than with epoll for at least a few tens of descriptors. It really depends on what your requirements are. If you are facing hundreds or even thousands of connections, you'll probably want to consider epoll. select does not scale well. Regards, Markus --=20 Markus Mottl=A0 =A0 =A0 =A0 http://www.ocaml.info=A0 =A0 =A0 =A0 markus.mot= tl@gmail.com