Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion. Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules. |
30th January 2017, 06:04 | #61 | Link | |
I'm Siri
Join Date: Oct 2012
Location: void
Posts: 2,633
|
Quote:
2. got it 3. the thing is I can't set it up... yasm doesn't seem to have an installer like clang that gets everything done automatically, also the manual setting-up documentation on the yasm website is obsolete, the visual studio folders it mentioned don't even exist anymore! I could switch to clang but that won't solve the xgetbv problem cuz it's not defined in clang's immintrin.h... and back to square one, I have to set up yasm first which is impossible. |
|
30th January 2017, 12:37 | #63 | Link |
I'm Siri
Join Date: Oct 2012
Location: void
Posts: 2,633
|
I separated the source code into 2 files.
just compile "Source.cpp" with "-march=native" and "Source_AVX_FMA.cpp" with "-march=haswell" and it should work, you don't have to edit the source code this time, I added the conditional compilation macros and it would pick "cpufeatures_gnu.hpp" automatically if you're on GCC test script Code:
import vapoursynth as vs core = vs.get_core() clp = core.std.BlankClip(width=1920, height=1080, format=vs.GRAYS, length=20000) clp = core.ftf.FixFades(clp) clp.set_output() |
30th January 2017, 14:58 | #66 | Link |
Pajas Mentales...
Join Date: Dec 2004
Location: Spanishtán
Posts: 496
|
Code:
Failed to evaluate the script: Python exception: No attribute with the name ftf exists. Did you mistype a plugin namespace? Traceback (most recent call last): File "src/cython/vapoursynth.pyx", line 1712, in vapoursynth.vpy_evaluateScript (src/cython/vapoursynth.c:34991) File "/home/sl1pkn07/aplicaciones/vapoursynth-test/fixtelecided-test.vpy", line 4, in clp = core.ftf.FixFades(clp) File "src/cython/vapoursynth.pyx", line 1306, in vapoursynth.Core.__getattr__ (src/cython/vapoursynth.c:28067) AttributeError: No attribute with the name ftf exists. Did you mistype a plugin namespace? Code:
all: g++ -c -std=c++14 -fPIC -march=native -O2 -pipe -fstack-protector-strong -D_FORTIFY_SOURCE=2 -I. -I/usr/include/vapoursynth -o fixtelecinedfades.o Source.cpp yasm -f elf -m amd64 -DARCH_X86_64=1 -o cpu.o cpu.asm g++ -shared -fPIC -Wl,-O1,--sort-common,--as-needed,-z,relro -o libvsfixtelecinedfades.so fixtelecinedfades.o cpu.o |
2nd February 2017, 18:50 | #67 | Link | |
I'm Siri
Join Date: Oct 2012
Location: void
Posts: 2,633
|
Quote:
I'm really just not familiar with all that gnu stuff and 1. there's the runtime simd extension detection so the unsupported forcibly-compiled functions won't matter cuz they will never get called. 2. you compiled "Source.cpp" which contains functions that will actually get called with "-march=native", so there should be no unsupported instructions in those functions. so logically I can't see why your binary failed to work, maybe you should ask others that are more familiar with the whole gnu world.. |
|
6th February 2017, 21:57 | #69 | Link |
unsigned int
Join Date: Oct 2012
Location: 🇪🇺
Posts: 760
|
Code:
Python exception: No attribute with the name _____ exists. Did you mistype a plugin namespace? Code:
core.std.LoadPlugin("/your/plugin/here.so")
__________________
Buy me a "coffee" and/or hire me to write code! |
6th February 2017, 21:58 | #70 | Link |
Pajas Mentales...
Join Date: Dec 2004
Location: Spanishtán
Posts: 496
|
@jackoneill the steps for build the plugin whit yasm is correct?
edit: Code:
Failed to evaluate the script: Python exception: Failed to load /usr/lib/vapoursynth/libvsfixtelecinedfades.so. Error given: /usr/lib/vapoursynth/libvsfixtelecinedfades.so: undefined symbol: _Z24fixfadesGetFrame_AVX_FMAiiPPvS0_P14VSFrameContextP6VSCorePK5VSAPI Traceback (most recent call last): File "src/cython/vapoursynth.pyx", line 1712, in vapoursynth.vpy_evaluateScript (src/cython/vapoursynth.c:34991) File "/home/sl1pkn07/aplicaciones/vapoursynth-plugin-fixtelecinedfades-git/fixtelecined-test.vpy", line 3, in clp = core.std.BlankClip(width=1920, height=1080, format=vs.GRAYS, length=20000) File "src/cython/vapoursynth.pyx", line 1604, in vapoursynth.Function.__call__ (src/cython/vapoursynth.c:33131) vapoursynth.Error: Failed to load /usr/lib/vapoursynth/libvsfixtelecinedfades.so. Error given: /usr/lib/vapoursynth/libvsfixtelecinedfades.so: undefined symbol: _Z24fixfadesGetFrame_AVX_FMAiiPPvS0_P14VSFrameContextP6VSCorePK5VSAPI Last edited by sl1pkn07; 6th February 2017 at 22:03. |
6th February 2017, 22:45 | #72 | Link |
Pajas Mentales...
Join Date: Dec 2004
Location: Spanishtán
Posts: 496
|
but that is not only for AVX CPU compilant?
Source.cpp -> older CPU Source_AVX_FMA.cpp -> newer CPU because Source_AVX_FMA.cpp needs build with -march=haswell, amd my cpu is not capable (don't have AVX or FMA3) Last edited by sl1pkn07; 6th February 2017 at 22:52. |
7th February 2017, 09:53 | #77 | Link | |
I'm Siri
Join Date: Oct 2012
Location: void
Posts: 2,633
|
Quote:
if I do merge Source.cpp and Source_AVX_FMA.cpp into one file, you'll have to compile that file with -march=haswell, and the compiler will probably generate unsupported instructions for the C++ functions.. |
|
7th February 2017, 10:25 | #79 | Link |
Pajas Mentales...
Join Date: Dec 2004
Location: Spanishtán
Posts: 496
|
Then need making more refraction in Source.cpp, because as @jackoneill said,build Source.cpp with march=native and build Source_AVX_FMA3.cpp with march=haswell and merge both in the library, the plugin now load without problem. build
Last edited by sl1pkn07; 7th February 2017 at 10:34. |
|
|