How to become an author
.NET Knowledge Base
  • All streams
  • Development
  • Administrating
  • Design
  • Management
  • Marketing
  • PopSci
Log in Sign up
23.0
Karma
0.0
Rating
1
Followers
3
Following

G-man DarkCoder

User

Profile

Posts 2

Comments 62

Bookmarks 134

  • Launcher для Google AI Challenge Tools
    41
    DarkCoder
    October 30, 2011 at 12:12 AM
    0
    Урррааа!!!

    У меня получилась спираль смерти!!! ))
    Иногда они начинают тупить и ходить по кругу, причём если один ходит то второй проходя рядом тоже может начать )
  • Launcher для Google AI Challenge Tools
    41
    DarkCoder
    October 28, 2011 at 12:20 PM
    +1
    Спасибо добрый человек! )
  • Барьеры памяти и неблокирующая синхронизация в .NET
    18
    DarkCoder
    October 16, 2011 at 01:45 AM
    0
    Да я даже не сразу догадался… по привычке в дебаге скомпилил первый пример — не зависает… )

    Хорошая статья, давно у меня было подозрение что наша софтина в продакшине иногда ведёт себя очень странно…
  • Comment from a drafted post.
  • Тележка телеприсутствия из подручных материалов
    55
    DarkCoder
    July 23, 2011 at 03:00 AM
    0
    Главное музыка в ролике очень в тему! ))
  • Репозиторий с задачами на Ruby
    29
    DarkCoder
    July 4, 2011 at 02:39 PM
    0
    На codeforces.ru (типа русского TopCoder'а) можно решать задачки на Ruby, что очень порадовало ) И вообще там куча разных языков (в т.ч. С++, Delphi, Pascal, Java, PHP, Python, C#, C, Haskell)
  • Сравнительное тестирование производительности платформ .Net, Java и Mono
    208
    DarkCoder
    June 10, 2011 at 11:05 AM
    0
    За что спасибо вам огромное! я показывал предварительно черновик нескольким своим друзьям и знакомым (программистам, достаточно серъёзным) и никто даже не намекнул мне что там может быть такой косяк подобного рода )
  • Сравнительное тестирование производительности платформ .Net, Java и Mono
    208
    DarkCoder
    June 9, 2011 at 03:17 PM
    –1
    Ваше высказывание справедливо лишь для первых 4-х микротестов, div10, sqrt, sin и cos.
    Интересно что дизассемблер студии показывает вызов sqrt, sin и cos:
      for (int i = 0; i < _iterationCount; ++i)
    00000048  xor         edx,edx 
    0000004a  mov         dword ptr [ebp-14h],edx 
    0000004d  nop 
    0000004e  jmp         0000006D 
                {
                    double x = System.Math.Sin(val);
    00000050  fld         qword ptr [ebp-8] 
    00000053  sub         esp,8 
    00000056  fstp        qword ptr [esp] 
    00000059  call        65081211 
    0000005e  fstp        st(0) 
    00000060  nop 
                    val += dt;
    00000061  fld         qword ptr [ebp-10h] 
    00000064  fadd        qword ptr [ebp-8] 
    00000067  fstp        qword ptr [ebp-8] 
                for (int i = 0; i < _iterationCount; ++i)
    0000006a  inc         dword ptr [ebp-14h] 
    0000006d  mov         eax,dword ptr [ebp-14h] 
    00000070  mov         edx,dword ptr [ebp-18h] 
    00000073  cmp         eax,dword ptr [edx+0Ch] 
    00000076  jl          00000050 
                }
    

    а реально этого не происходит
  • Сравнительное тестирование производительности платформ .Net, Java и Mono
    208
    DarkCoder
    June 8, 2011 at 10:53 PM
    0
    Всё просто:
    1,31406 — количество операций за микросекунду (умножьте на миллион получите количество операций в секунду)
    1522,00 милисекунд — суммарное время выполнения микротеста (за текущий проход)
    2e+08 — количество итераций (за текущий проход)
  • Сравнительное тестирование производительности платформ .Net, Java и Mono
    208
    DarkCoder
    June 8, 2011 at 10:43 PM
    +1
    Вы правы, здесь я облажался:
     for (int i = 0; i < _iterationCount; ++i)
    00000025  xor         edx,edx 
    00000027  mov         dword ptr [ebp-4],edx 
    0000002a  nop 
    0000002b  jmp         00000031 
                {
                    int x = i / 10;
    0000002d  nop 
                for (int i = 0; i < _iterationCount; ++i)
    0000002e  inc         dword ptr [ebp-4] 
    00000031  mov         eax,dword ptr [ebp-4] 
    00000034  mov         edx,dword ptr [ebp-8] 
    00000037  cmp         eax,dword ptr [edx+0Ch] 
    0000003a  jl          0000002D 
                }
    
  • Сравнительное тестирование производительности платформ .Net, Java и Mono
    208
    DarkCoder
    June 8, 2011 at 10:35 PM
    0
    Ассемблерный листинг пока привести затрудняюсь…
  • Сравнительное тестирование производительности платформ .Net, Java и Mono
    208
    DarkCoder
    June 8, 2011 at 10:28 PM
    0
    Вот IL код представленного фрагмента:
    .method public hidebysig virtual instance void 
            Do() cil managed
    {
      // Code size       35 (0x23)
      .maxstack  2
      .locals init ([0] int32 i)
      IL_0000:  ldarg.0
      IL_0001:  call       instance void DotNetPerformance.SomeTest::StartTiming()
      IL_0006:  ldc.i4.0
      IL_0007:  stloc.0
      IL_0008:  br.s       IL_0013
      IL_000a:  ldloc.0
      IL_000b:  ldc.i4.s   10
      IL_000d:  div
      IL_000e:  pop
      IL_000f:  ldloc.0
      IL_0010:  ldc.i4.1
      IL_0011:  add
      IL_0012:  stloc.0
      IL_0013:  ldloc.0
      IL_0014:  ldarg.0
      IL_0015:  ldfld      int32 DotNetPerformance.SomeTest::_iterationCount
      IL_001a:  blt.s      IL_000a
      IL_001c:  ldarg.0
      IL_001d:  call       instance void DotNetPerformance.SomeTest::StopTiming()
      IL_0022:  ret
    } // end of method Div10Test::Do

    деление на 10 присутсвует
  • Сравнительное тестирование производительности платформ .Net, Java и Mono
    208
    DarkCoder
    June 8, 2011 at 09:45 PM
    0
    Да, явно не ставил, в будущем учту
  • Сравнительное тестирование производительности платформ .Net, Java и Mono
    208
    DarkCoder
    June 8, 2011 at 09:20 PM
    0
    Этих опций достаточно чтобы судить о результатах с этими опциями )
  • Сравнительное тестирование производительности платформ .Net, Java и Mono
    208
    DarkCoder
    June 8, 2011 at 03:56 PM
    +2
    Intel Core Duo T2300 1,66 ГГц

    Да, вы правы, в статье не указал явно, сейчас исправлю

  • Сравнительное тестирование производительности платформ .Net, Java и Mono
    208
    DarkCoder
    June 8, 2011 at 03:52 PM
    +1
    Вас интересует количество итераций внутри микротеста или сколько раз запускался весь пакет тестов подряд? количество итераций внутри разных микротестов каждого типа от сотен тысяч до нескольких миллионов
  • Сравнительное тестирование производительности платформ .Net, Java и Mono
    208
    DarkCoder
    June 8, 2011 at 03:44 PM
    0
    Упомяну что на этих же тестах, .Net 4.0 была «совсем чуть-чуть немножко медленнее» чем 3.5, что меня немного разочаровало.
  • Сравнительное тестирование производительности платформ .Net, Java и Mono
    208
    DarkCoder
    June 8, 2011 at 03:39 PM
    +1
    В статье есть ответы на ваши вопросы:
    Весь тест циклически прогонялся по 10 раз

    -Xms32m -Xmx768m
  • Сравнительное тестирование производительности платформ .Net, Java и Mono
    208
    DarkCoder
    June 8, 2011 at 03:25 PM
    +5
    Товарищи давайте не будем холиварить, гораздо лучше обсудить степень компетентности автора :) и параметры запуска заодно.

    Язык и среду каждый выбирает сам либо по задаче, либо по душе
  • Сравнительное тестирование производительности платформ .Net, Java и Mono
    208
    DarkCoder
    June 8, 2011 at 03:23 PM
    +3
    Все параметры запуска специально приведены в статье
    --desktop --gc=sgen
  • RubyGems — подробно
    21
    DarkCoder
    June 2, 2011 at 04:56 PM
    0
    Спасибо! теперь имею представление о гемах )

    Товарищи Ruby девелоперы, подскажите пожалуйста хорошую книжку новичку в Ruby
  • Вирутальная модель нематоды C. Elegans
    21
    DarkCoder
    May 27, 2011 at 01:52 PM
    0
    Круто сделано!
    Возникает философский вопрос, а зачем и почему нематоде что-то надо делать, куда-то двигаться и вообще какая у неё в жизни цель? зачем она живёт? )) По идее, согласно современным научным представлениям, управляющие сигналы такого рода зарождаются где-то нервной системе, в вашей работе это как-то моделируется?
  • ← here
  • there →
  • 1
  • 2

Info

  • Rating 6,083–d
  • Activity 3/1/21, 2:26 AM
  • Registered May 27, 2011

Contribution to hubs

  • Programming 82
  • Functional Programming 56

Your account

  • Log in
  • Sign up

Sections

  • Posts
  • Hubs
  • Companies
  • Users
  • Sandbox

Info

  • How it works
  • For Authors
  • For Companies
  • Documents
  • Agreement
  • Terms of service

Services

  • Ads
  • Subscription plans
  • Content
  • Seminars
  • Megaprojects
© 2006 – 2021 «Habr»
Language settings
About
Support
Mobile version
Language settings
Interface
Content