# Report 0 - Odamex SDL 15 DBG - Time Profile.mshark - Time Profile (All Thread States) of odamex SharkProfileViewer # Generated from the visible portion of the outline view + 56.4%, Blit1to4, SDL | + 56.4%, SDL_SoftBlit, SDL | | + 56.4%, SDL_LowerBlit, SDL | | | + 50.9%, SDL_Flip, SDL | | | | + 50.9%, SDLVideo::UpdateScreen(DCanvas*), odamex | | | | | - 50.9%, I_FinishUpdate(), odamex | | | - 5.5%, SDL_UpdateRects, SDL - 6.2%, R_DrawColumnHorizP_C(), odamex - 4.7%, rt_map4cols_c(int, int, int), odamex - 4.4%, md5_process(md5_state_s*, unsigned char const*), odamex - 4.1%, R_DrawSpanP_C(), odamex - 4.1%, I_Blit(DCanvas*, int, int, int, int, DCanvas*, int, int, int, int), odamex - 3.2%, wipe_doMelt(int), odamex - 2.6%, __semwait_signal, libSystem.B.dylib - 1.9%, mach_msg_trap, libSystem.B.dylib - 1.1%, mach_wait_until, libSystem.B.dylib - 1.0%, BestColor(unsigned int const*, int, int, int, int), odamex - 1.0%, DCanvas::DrawPatchSP(unsigned char const*, unsigned char*, int, int, int), odamex - 0.7%, read, libSystem.B.dylib - 0.6%, wipe_shittyColMajorXform(short*), odamex - 0.5%, rt_copy4cols_c(int, int, int), odamex - 0.5%, __memcpy, libobjc.A.dylib - 0.3%, W_CheckNumForName(char const*, int), odamex - 0.3%, R_DrawColumnP_C(), odamex - 0.3%, P_DivlineSide(int, int, divline_t*), odamex - 0.3%, DCanvas::DrawLucentPatchSP(unsigned char const*, unsigned char*, int, int, int), odamex - 0.2%, R_InitTextureMapping(), odamex - 0.2%, BlastColumn(void (*)()), odamex - 0.1%, rt_initcols(), odamex - 0.1%, R_StoreWallRange(int, int), odamex - 0.1%, R_PointOnSide(int, int, node_s*), odamex - 0.1%, R_InitColumnDrawers(int), odamex - 0.1%, ImageLoaderMachO::hasCoalescedExports() const, dyld - 0.1%, FixedMul_C(int, int), odamex - 0.1%, TypeInfo::IsAncestorOf(TypeInfo const*) const, odamex - 0.1%, strncasecmp_l, libSystem.B.dylib - 0.1%, SDL_FillRect, SDL - 0.1%, rt_draw4cols(int), odamex - 0.1%, R_MakeSpans(visplane_s*, void (*)(int, int, int)), odamex - 0.1%, R_GetColumn(int, int), odamex - 0.1%, P_XYMovement(AActor*), odamex - 0.1%, P_PlaneZ(int, int, plane_s const*), odamex - 0.1%, P_CrossSubsector(int), odamex - 0.1%, P_AnimationTick(AActor*), odamex - 0.1%, munmap$UNIX2003, libSystem.B.dylib - 0.1%, Mix_OpenAudio, SDL_mixer - 0.1%, MikMod_InfoDriver, mikmod - 0.1%, DThinker::RunThinkers(), odamex - 0.0%, Z_Malloc2(unsigned long, int, void*, char const*, int), odamex - 0.0%, TThinkerIterator::Next(), odamex - 0.0%, TArray::operator[](unsigned long) const, odamex - 0.0%, TArray::operator[](unsigned long) const, odamex - 0.0%, szp::~szp(), odamex - 0.0%, szp::unlink(), odamex - 0.0%, strncmp, libSystem.B.dylib - 0.0%, SDL_RateMUL2_c2, SDL - 0.0%, SDL_Convert16MSB, SDL - 0.0%, rt_nudgecols(int, int), odamex - 0.0%, rt_draw2cols(int, int), odamex - 0.0%, R_RotatePoint(int, int, unsigned int, int&, int&), odamex - 0.0%, R_ProjectSprite(AActor*, int), odamex - 0.0%, R_PointToAngle(int, int), odamex - 0.0%, R_PointInSubsector(int, int), odamex - 0.0%, R_InitSpriteDefs(char const**), odamex - 0.0%, R_DrawMaskedColumnHoriz(post_s*), odamex - 0.0%, R_CheckTextureNumForName(char const*), odamex - 0.0%, R_CheckPlane(visplane_s*, int, int), odamex - 0.0%, patch_s::width() const, odamex - 0.0%, parsePlistString, CoreFoundation - 0.0%, P_UpdateSpecials(), odamex - 0.0%, P_RespawnSpecials(), odamex - 0.0%, P_MoveActor(AActor*), odamex - 0.0%, P_IsPlaneLevel(plane_s const*), odamex - 0.0%, P_InterceptVector2(divline_t*, divline_t*), odamex - 0.0%, P_FloorHeight(int, int, sector_s const*), odamex - 0.0%, P_FinishLoadingLineDefs(), odamex - 0.0%, P_CheckPosition(AActor*, int, int), odamex - 0.0%, P_BlockLinesIterator(int, int, int (*)(line_s*)), odamex - 0.0%, open$UNIX2003, libSystem.B.dylib - 0.0%, objc_msgSend_rtp, libobjc.A.dylib - 0.0%, NSPushAutoreleasePool, Foundation - 0.0%, mk_timer_arm, libSystem.B.dylib - 0.0%, md5_append, odamex - 0.0%, M_Random(), odamex - 0.0%, M_Init(), odamex - 0.0%, M_Free2(void**), odamex - 0.0%, IOCFUnserializeparse, IOKit - 0.0%, ImageLoaderMachO::findExportedSymbol(char const*, void const*, bool, ImageLoader const**) const, dyld - 0.0%, G_ReadDemoTiccmd(), odamex - 0.0%, FThinkerIterator::Next(), odamex - 0.0%, FlushAllBuffers(__CFRunLoopObserver*, unsigned long, void*), HIToolbox - 0.0%, dyld_stub_SDL_OpenAudio, SDL_mixer - 0.0%, dyld_stub_pthread_main_np, CoreFoundation - 0.0%, dyld_stub_pthread_getspecific, HIToolbox - 0.0%, dyld_stub_cvar_t::operator=(float), odamex - 0.0%, dyld_stub_cvar_t::operator float() const, odamex - 0.0%, dyld_stub_CFRunLoopGetMain, AppKit - 0.0%, DObject::IsKindOf(TypeInfo const*) const, odamex - 0.0%, DCanvas::DrawTranslatedPatchSP(unsigned char const*, unsigned char*, int, int, int), odamex - 0.0%, channel_t* std::__copy_backward_normal::copy_b_n(channel_t*, channel_t*, channel_t*), odamex - 0.0%, CFSetGetCount, CoreFoundation - 0.0%, CFSetApplyFunction, CoreFoundation - 0.0%, CFRunLoopGetCurrent, CoreFoundation - 0.0%, CFRetain, CoreFoundation - 0.0%, AActor::LinkToWorld(), odamex - 0.0%, AActor::ActorBlockMapListNode::getIndex(int, int), odamex - 0.0%, __pthread_self, libobjc.A.dylib - 0.0%, __memset_pattern, libobjc.A.dylib - 0.0%, __gettimeofday, libSystem.B.dylib - 0.0%, __CFStringHash, CoreFoundation - 0.0%, __CFDictionaryDeallocate, CoreFoundation