Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:38114 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 15122 invoked from network); 9 Jun 2008 11:46:09 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 9 Jun 2008 11:46:09 -0000 Authentication-Results: pb1.pair.com smtp.mail=michal.dziemianko@gmail.com; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=michal.dziemianko@gmail.com; sender-id=pass; domainkeys=bad Received-SPF: pass (pb1.pair.com: domain gmail.com designates 216.239.58.188 as permitted sender) DomainKey-Status: bad X-DomainKeys: Ecelerity dk_validate implementing draft-delany-domainkeys-base-01 X-PHP-List-Original-Sender: michal.dziemianko@gmail.com X-Host-Fingerprint: 216.239.58.188 gv-out-0910.google.com Received: from [216.239.58.188] ([216.239.58.188:22321] helo=gv-out-0910.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 79/65-21959-FF71D484 for ; Mon, 09 Jun 2008 07:46:09 -0400 Received: by gv-out-0910.google.com with SMTP id e6so484670gvc.37 for ; Mon, 09 Jun 2008 04:46:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:mime-version:to:message-id :content-type:from:subject:date:x-mailer; bh=uajzEwo/E1bLvSFpZK23ZbON0ZqxxRt+1/3rVTueH/g=; b=sRN+nOH+lwjpRk9cSo7UjHEE3Hbp6g6smnRS8ozdZa3lpJsbWPHnMvMIp73LAunTHy m9izFpbhx7t7+Q3ioYveLLRLqW7HK4M9CaJP9Tz4epJy9vt35GZfgiJQPdsBe0TsbWDe d0z3aIC5RySpwVP5RFPKhXpW0fdU/XvUYy1Sg= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:to:message-id:content-type:from:subject:date:x-mailer; b=CLToqA3F13Oq7XWO+AHCosUz9YCAp+ywQK18VPksOIf2RHtkg4L4oWHYsFtTuvzQU4 VcZ1hupysTWdhY4aeQl4JNn0MPQ3cot8GKZi5ZQBjZH0IP9E7ocrfthfh3aSNe2Lb0y7 RxBtIz7wuxQYD4EIUFxAl4GxDo2RcR4DiuhIk= Received: by 10.103.228.12 with SMTP id f12mr2303505mur.28.1213011964588; Mon, 09 Jun 2008 04:46:04 -0700 (PDT) Received: from ?129.215.76.35? ( [129.215.76.35]) by mx.google.com with ESMTPS id u9sm18161996muf.12.2008.06.09.04.46.01 (version=TLSv1/SSLv3 cipher=RC4-MD5); Mon, 09 Jun 2008 04:46:03 -0700 (PDT) Mime-Version: 1.0 (Apple Message framework v753.1) To: internals@lists.php.net Message-ID: <7E62CA6E-83F4-4F9C-86FB-75EBE7D489C9@gmail.com> Content-Type: multipart/alternative; boundary=Apple-Mail-6-628646685 Date: Mon, 9 Jun 2008 12:39:24 +0100 X-Mailer: Apple Mail (2.753.1) Subject: Algorithm Optimizations - string search From: michal.dziemianko@gmail.com (Michal Dziemianko) --Apple-Mail-6-628646685 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII; delsp=yes; format=flowed Hello, Here: http://212.85.117.53/DIFF.txt is small patch that will speed up following functions: strpos, stripos, strrpos strripos, and probably some others (all that use zend_memnstr/php_memnstr function) The speedup of zend_memnstr is about 8% on average (about 30% in case of artificial strings). Functions strrpos and strripos are about 25% faster on average. The only drawback - it needs some additional space (size of the needle). All functions pass all the tests. If it looks fine than I will apply for cvs account. Cheers, Michal --Apple-Mail-6-628646685--