RaZOR
> > а с __int64 что будет ?
> а он ему нужен? или что ты имеешь ввиду?
какой asm выхлоп будет от __int64 ?
innuendo
> какой asm выхлоп будет от __int64 ?
что будет? будут лишние mov-ы и по два or вместо одного, т.к. __int64 не влезет в 32 битные регистры. ему надо уменьшать битность и анролить, а ты наоборот. я не улавливаю хода твоих мыслей. :)
правка: все вышесказанное относится к 32 битной системе, на 64 битах будут(должны?) использоваться 64бит регистры.
RaZOR
покажи выхлоп
innuendo
полегче давай, ага? я тут у тебя ничего не просил, если что.
тот же цикл, 32бита, 64бит компилера нету.
b0 |= mas[i + 0];
00831040 mov edi,dword ptr [esp+eax*8+2Ch]
00831044 or dword ptr [esp+1Ch],edi
b1 |= mas[i + 1];
00831048 mov edi,dword ptr [esp+eax*8+30h]
0083104C or dword ptr [esp+10h],edi
00831050 mov edi,dword ptr [esp+eax*8+34h]
00831054 or dword ptr [esp+14h],edi
b2 |= mas[i + 2];
00831058 mov edi,dword ptr [esp+eax*8+38h]
0083105C or dword ptr [esp+8],edi
00831060 mov edi,dword ptr [esp+eax*8+3Ch]
00831064 or esi,dword ptr [esp+eax*8+28h]
00831068 or dword ptr [esp+0Ch],edi
b3 |= mas[i + 3];
0083106C or ecx,dword ptr [esp+eax*8+40h]
00831070 or edx,dword ptr [esp+eax*8+44h]
00831074 add eax,4
00831077 adc dword ptr [esp+24h],0
0083107C js main+40h (831040h)
for(; i < size; i += 4) {
0083107E jg main+87h (831087h)
00831080 cmp eax,0FA0h
00831085 jb main+40h (831040h)
}RaZOR
> полегче давай, ага? я тут у тебя ничего не просил, если что.
извини, я забыл слово пожалуйста :)
innuendo
> извини, я забыл слово пожалуйста :)
ок, по делу что думаешь? :)
RaZOR
> ок, по делу что думаешь? :)
а если сравнить по времени _int64 с int32 и bool ?
innuendo
> а если сравнить по времени _int64 с int32 и bool ?
это уже к топикстартеру, он тут тесты делает...
RaZOR
Я тут уже не причем, моя проблема пару страниц назад решилась.
RaZOR
> тот же цикл, 32бита,
RaZOR
> и анролить
вот тебе и unrolling c __int64 по сравнению с int32
Pushkoff
> к этому нет доступа из UserMode
а всетки зацепка есть GetWriteWatch - http://msdn.microsoft.com/en-us/library/aa366573%28v=vs.85%29.aspx
при определенных условия можно заюзать.
Тема в архиве.
| Здесь Нужен vps сервер в Великобритании? Сравните варианты и выберите лучший для себя здесь pro-hosting.online |