Beefy Boxes and Bandwidth Generously Provided by pair Networks
Just another Perl shrine
 
PerlMonks  

Using Microsoft Visual C Link Time Code Generation (LTCG) and Profile Guided Optimization (PGO) with XS modules

by bulk88 (Priest)
on Jul 22, 2012 at 23:48 UTC ( #983092=CUFP: print w/ replies, xml ) Need Help??

Help for this page

Select Code to Download


  1. or download this
              char *inString =
                  (((inStringSV)->sv_flags & (0x00000400)) ==
                   0x00000400 ? ((in_len = ((XPV *) (inStringSV)->sv_any)-
    +>xpv_cur),
                                 ((inStringSV)->sv_u.svu_pv)) : Perl_sv_2p
    +v_flags (my_perl, inStringSV, &in_len,
                                                                          
    +         2));
    
  2. or download this
        if (items != 3)
           S_croak_xs_usage(my_perl, cv,"Destination, Source, Length");
    
  3. or download this
    Microsoft (R) Incremental Linker Version 7.10.6030
    Copyright (C) Microsoft Corporation.  All rights reserved.
    ...
          /VXD
          /WINDOWSCE:{CONVERT|EMULATION}
          /WS:AGGRESSIVE
    
  4. or download this
    Microsoft (R) Incremental Linker Version 9.00.30729.01
    Copyright (C) Microsoft Corporation.  All rights reserved.
    ...
          /VERBOSE[:{ICF|LIB|REF|SAFESEH}]
          /VERSION:#[.#]
          /WX[:NO]
    
  5. or download this
    C:\Documents and Settings\Administrator\Desktop\w32f>perl makefile.pl
    Checking if your kit is complete...
    ...
    Writing MYMETA.yml and MYMETA.json
    
    C:\Documents and Settings\Administrator\Desktop\w32f>
    
  6. or download this
    # --- MakeMaker cflags section:
    
    CCFLAGS = -nologo -GF -W3 -MD -Zi -DNDEBUG -O1 -DWIN32 -D_CONSOLE -DNO
    +_STRICT -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -DPERL
    +_TEXTMODE_SCRIPTS -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -DUSE_P
    +ERLIO
    OPTIMIZE = -MD -Zi -DNDEBUG -O1
    
  7. or download this
    # --- MakeMaker dynamic_lib section:
    
    ...
        if exist $@.manifest mt -nologo -manifest $@.manifest -outputresou
    +rce:$@;2
        if exist $@.manifest del $@.manifest
        $(CHMOD) $(PERM_RWX) $@
    
  8. or download this
    C:\Documents and Settings\Administrator\Desktop\w32f>nmake OPTIMIZE="-
    +MD -Zi -DN
    DEBUG -O1 -GL"  OTHERLDFLAGS="-LTCG:PGINSTRUMENT pgort.lib " test
    ...
    Result: PASS
    
    C:\Documents and Settings\Administrator\Desktop\w32f>
    
  9. or download this
    C:\Documents and Settings\Administrator\Desktop\w32f>dir
     Volume in drive C has no label.
    ...
                   6 Dir(s)  501,818,015,744 bytes free
    
    C:\Documents and Settings\Administrator\Desktop\w32f>
    
  10. or download this
    
    C:\Documents and Settings\Administrator\Desktop\w32f>cd C:\Documents a
    +nd Setting
    ...
    
    C:\Documents and Settings\Administrator\Desktop\w32f\blib\arch\auto\Wi
    +n32API\Fil
    e>
    
  11. or download this
    C:\Documents and Settings\Administrator\Desktop\w32f\blib\arch\auto\Wi
    +n32API\Fil
    e>copy *.pgc "C:\Documents and Settings\Administrator\Desktop\w32f"
    ...
    
    C:\Documents and Settings\Administrator\Desktop\w32f\blib\arch\auto\Wi
    +n32API\Fil
    e>
    
  12. or download this
    
    C:\Documents and Settings\Administrator\Desktop\w32f>dir
    ...
                   6 Dir(s)  501,818,015,744 bytes free
    
    C:\Documents and Settings\Administrator\Desktop\w32f>
    
  13. or download this
    C:\Documents and Settings\Administrator\Desktop\w32f>cd "C:\Documents 
    +and Settin
    gs\Administrator\Desktop\w32f\blib\arch\auto\Win32API\File"
    ...
    
    C:\Documents and Settings\Administrator\Desktop\w32f\blib\arch\auto\Wi
    +n32API\Fil
    e>
    
  14. or download this
    
    C:\Documents and Settings\Administrator\Desktop\w32f>nmake OPTIMIZE="-
    +MD -Zi -DN
    ...
    Appending installation info to c:\p517\lib/perllocal.pod
    
    C:\Documents and Settings\Administrator\Desktop\w32f>
    
  15. or download this
    Merging File!1.pgc
    Merging File!2.pgc
    Generating code
    43 of 43 (100.00) profiled functions will be compiled for speed
    
  16. or download this
    C:\Documents and Settings\Administrator\Desktop\w32f>pgomgr
    Microsoft (R) Profile Guided Optimization Manager 9.00.21022.08
    ...
    /unique             Display decorated function names
    
    C:\Documents and Settings\Administrator\Desktop\w32f>
    
  17. or download this
    .text C0CCh
    .rdata 171Eh
    .data 364h
    .rsrc 3C0h
    .reloc 92Ah
    
  18. or download this
    .text AD70h
    .rdata 171Eh
    .data 364h
    .rsrc 3C0h
    .reloc 8CCh
    
  19. or download this
    .text AD6Ah
    .rdata 171Eh
    .data 364h
    .rsrc 3C0h
    .reloc 8CCh
    

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: CUFP [id://983092]
Approved by GrandFather
Front-paged by ww
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others meditating upon the Monastery: (8)
As of 2014-07-11 02:38 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    When choosing user names for websites, I prefer to use:








    Results (217 votes), past polls