Yog-Sothoth (zam0th) wrote,
Yog-Sothoth
zam0th

  • Location:
  • Mood:
  • Music:

никогда не любил атлоны; информация к размышлению

магическим образом разбор одного и того же иерархического текста одним и тем же java кодом на интелмаке осуществляется в разы быстрее чем на атлонвинде с аналогичной системной конфигурацией.

2.5Мб текста в формате xml обрабатываются apache xmlbeans и jaxp xpath. два источника: файл и уже подготовленная строка, оба содержат идентичный текст.

тест #1: синтаксис
на маке xmlbeans разбирает строку за 300мс, на атлоновинде - за 400мс. ожидаемо. файл же на маке разбирается значительно быстрее, ~200мс /* что уже удивительно, я всегда думал что оперативная память не просто так свое название имеет */ против ожидаемых 700мс [и даже длительнее] на атлонвинде.

тест #2: семантика
валидация разобранного текста на обеих платформах выполняется за примерно одинаковое время, что неудивительно /* однако почему-то валидация при разборе файла на обеих платформах осуществляется стабильно быстрее валидации при разборе строки, почти в два раза */.

xpath-запрос, подсчитывающий число определенных структур в исходном тексте, выполняется на маке за ~1c, тогда как на атлонвинде за 1.5с.

а вот теперь магия и волшебство. будучи реализован "руками" при помощи разбора через xmlbeans с последующим перебором и подсчетом на чистой java, упомянутый запрос выполняется на маке чуть-чуть медленнее (~1.2с), а вот на атлонвинде он выполняется 5с /* и это уже нихуя не "чуть-чуть" медленее :) */!

и таких загадок хватает на весь фильм ©. с чем это связано: с реализацией ли jvm, с особенностями ли управления ресурсами, - не знаю и вобщем не особо и хочу знать.
Tags: it, work
Subscribe
  • Post a new comment

    Error

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 0 comments