Re: [PHP-DEV] Discussion on array_str_contains() RFC and performance benchmarking methodology

[email protected] (سپهر محمودی)
Newsgroups php.internals
Message-ID <CA+Jcf5ukX2fprar4pBjskeX4A3xay+WFeOY7MgDSUYmEDzqDEg@mail.gmail.com>
در تاریخ پنجشنبه ۱۰ سپتامبر ۲۰۲۶، ۱۵:۳۷ youkidearitai <
[email protected]> نوشت:

> ‪2026年9月10日(木) 20:40 ‫سپهر محمودی‬‎ <[email protected]>:‬
> >
> >
> >
> > در تاریخ پنجشنبه ۱۰ سپتامبر ۲۰۲۶، ۰۶:۰۶ youkidearitai <
> [email protected]> نوشت:
> >>
> >> ‪2026年9月10日(木) 10:07 ‫سپهر محمودی‬‎ <[email protected]>:‬
> >> >
> >> >
> >> > Hi everyone,
> >> >
> >> > I hope you're all having a great week.
> >> >
> >> > I’ve been following the discussions and recent feedback regarding the
> array_str_contains() RFC closely. Performance and speed comparisons have
> come up as a key point, especially around whether a dedicated internal C
> implementation provides sufficient value compared to a userland foreach
> loop.
> >> >
> >> > I'd love to open up a constructive and transparent discussion around
> the benchmarking methodology we're using here. Some of the initial numbers
> shared recently don't seem to reflect real-world scenarios or different
> data profiles (like varying array sizes, early exits vs worst-case lookups,
> UTF-8 strings, and compiler optimization flags like -O2 / -O3).
> >> >
> >> > Before drawing final conclusions on performance, I think it would be
> great if we could align on:
> >> > 1. The exact benchmark scripts and test datasets we should use to
> evaluate this fairly.
> >> > 2. The compilation environment and flags used for generating these
> metrics.
> >> > 3. Where the potential overhead in the current C implementation is
> coming from and how we can optimize it together.
> >> >
> >> > My goal has always been to make PHP more expressive and efficient for
> everyday developers. I welcome any suggestions, insights, or benchmark
> reproductions from the community so we can evaluate this RFC based on
> solid, agreed-upon data.
> >> >
> >> > Thanks for your time and feedback!
> >> >
> >> > Best regards,
> >> > Sepehr
> >> >
> >>
> >> Hi Internals
> >>
> >> For your reference, I have attached the benchmark diff files. (commit
> >> hash is 4982bf45f4786faaa198558dd619f8a4d59e25f0)
> >> - .diff
> >> - .exp
> >> - .log
> >> - .out
> >> - .php
> >> - .phpt
> >> - .sh
> >>
> >> I can not find definite improve performance.
> >> (My PC: WSL Ubuntu 24.04, Ryzen 7 7735HS, 32GB RAM)
> >>
> >> I don't familiar with Zend Engine's performance, However I think
> >> function's performance improvement is limited.
> >>
> >> Regards
> >> Yuya
> >>
> >> --
> >> ---------------------------
> >> Yuya Hamada (tekimen)
> >> - https://tekitoh-memdhoi.info
> >> - https://github.com/youkidearitai
> >> -----------------------------
> >
> >
> > Hi Internals,
> >
> > Thank you all for the time and effort invested in this discussion.
> >
> > Regarding the benchmarks provided by Yuya, I must address two critical
> issues:
> >
> > 1. The provided implementation does not even build in my environment. It
> is scientifically impossible to derive any performance conclusions from
> code that fails to compile.
> >
> > 2. Given your own admission of limited familiarity with the Zend Engine
> internals, the methodology applied here lacks the necessary technical rigor
> for a valid assessment.
> >
> > I am more than willing to engage with constructive, reproducible, and
> engine-aware performance analysis. However, as it stands, the provided
> material is effectively contentless and does not offer a basis for a
> technical evaluation.
> >
> > Best regards,
> >
> > Sepehr
> >
> >
>
> Hi
>
> PLEASE UNZIP ATTACHED FILE. YOUR CODE.
>
> Regards.
> Yuya
>
> --
> ---------------------------
> Yuya Hamada (tekimen)
> - https://tekitoh-memdhoi.info
> - https://github.com/youkidearitai
> -----------------------------
>

Mr. Hamada,

If you lack a solid grasp of Zend Engine internals and core data structures
like zval—which is the very backbone of PHP’s C runtime—it feels like you
are simply relying on an AI assistant rather than technical understanding.
Without mastering zval and Zend memory handling, working at this level in C
is effectively crippled.

To answer your question: I am testing this on high-end industrial 64-bit
hardware, and your provided files still completely fail to build.

Perhaps you should tell your AI to think a bit harder before generating
patches and benchmarks.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.