UHS-I / SD cards investigation

Started by nikfreak, July 30, 2014, 05:46:56 PM

Previous topic - Next topic

0 Members and 2 Guests are viewing this topic.

kye

Why is there a difference in the write speed between photo and video modes?

My Samsung Evo Plus gets ~47MB/s in video mode but ~68MB/s in photo mode in my 700D.

Is there a CPU overhead in video mode perhaps?  The reason I ask is that it seems like it might be something that can be optimised for performance improvement.

bakersdozen

Quote from: Danne on May 19, 2018, 10:22:35 AM
I have put up a hardcoded 160MHZ 700D build in my repository to be tested. It´s the same as for 100D and eosm. If anybody tests this, please feedback here what´s working or not. Fried cards or not etc...
On top of downloads page:
https://bitbucket.org/Dannephoto/magic-lantern/downloads/

Hi @Danne, thanks for your work on hardcoding the overclock. Really saves time for testing purposes and then to commit to shooting - well done. Any chance you could do the same for 70D? (combine dfort's crop_rec_4k.57614b3.2018Mar14.70D112.zip and your 160MHZ hardcode)

Such exciting times for ML with these constant advancements.
EOS M + 5D3

andy kh

Quote from: bakersdozen on May 23, 2018, 02:54:40 AM
Any chance you could do the same for 70D? (combine dfort's crop_rec_4k.57614b3.2018Mar14.70D112.zip and your 160MHZ hardcode)

dfort's crop-rec doesnt work yet
5D Mark III - 70D

Danne

Since hardcoding sd_uhs.mo seems a bit far off here is a lua snippet which will start the SD overclock patching upon starting the camera. Lua module has to be enabled and the script needs to be set to Autorun to ON.
Put following in a file with the extension .lua and put it in the scripts folder.
-- enable SD overclocking

    if menu.get("Debug", "SD overclock", "OFF")
    then
    console.show()
    print("This will enable SD overclock")
    msleep(2000)
    menu.set("Debug", "SD overclock", "ON")
    else
    console.show()
    print("Please enable sd_uhs.mo before running this script again.")
    msleep(5000)
    console.hide()
    return
    end


I put up two new builds (23may) for eosm and eos100D. Use with caution!:
https://bitbucket.org/Dannephoto/magic-lantern/downloads/

bakersdozen

Quote from: andy kh on May 23, 2018, 05:41:36 AM
dfort's crop-rec doesnt work yet

Working fine for me on 70D so far, need to get the 95 sandisk SD to keep pushing the limits - I've only got the 90 MicroSD with adapter currently. Still able to get some good speeds out of it though! And I can change resolution higher than 1728, so definitely working!

Quote from: Danne on May 23, 2018, 12:17:34 PM
Since hardcoding sd_uhs.mo seems a bit far off here is a lua snippet which will start the SD overclock patching upon starting the camera. Lua module has to be enabled and the script needs to be set to Autorun to ON.
Put following in a file with the extension .lua and put it in the scripts folder.
-- enable SD overclocking

    if menu.get("Debug", "SD overclock", "OFF")
    then
    console.hide()
    menu.set("Debug", "SD overclock", "ON")
    else
    console.show()
    print("Please enable sd_uhs.mo before running this script again.")
    msleep(5000)
    console.hide()
    return
    end



Thanks @Danne ! exactly what I needed for now. Much appreciated and kind regards. More benchmarks from 70D to follow once new card arrives.
I will also try your new EOSM build tomorrow.
EOS M + 5D3

Danne

My builds are specifically for faster cards and I don't know how the lua script will react to sd_uhs.mo with full test run procedure(full code).
Anyhow, needs testing/reporting and so on...

Edit:moved console.hide() to after patching.

bakersdozen

@Danne, the .lua script you added works fine with Autorun on startup. No problems there, thanks! Just have to remember to be in photo mode when turning on the camera.
EOS M + 5D3

Danne

Cool.
I think it worked on my 100D going straight to movie mode. Did you try?

Danne

Changed lua to following:
-- enable SD overclocking

    if menu.get("Debug", "SD overclock", "OFF")
    then
    console.show()
    print("This will enable SD overclock")
    msleep(2000)
    menu.set("Debug", "SD overclock", "ON")
    else
    console.show()
    print("Please enable sd_uhs.mo before running this script again.")
    msleep(5000)
    console.hide()
    return
    end


Better to have some sort of indication what´s going on when patching...

In the provided builds enable lua.mo then run then script enable SD overclocking and set it to Autorun ON for patching upon starting your camera.
New uploads:
https://bitbucket.org/Dannephoto/magic-lantern/downloads/

andy kh

Quote
Working fine for me on 70D so far

it never work on mine. u should report in 70D forum. dfort wil be happy to know that. he worked so hard but no luck for most of us
5D Mark III - 70D

Danne

@andy_kh
Above quote is coming from bakersdozen, not danne(me).

OlRivrRat

Not lua Savvy here so guess I'm missing something > Can't get it to work. The only thing showing under "Scripts" is "Show Console" .
ORR~DeanB  ~~  80D-ML  &  SL1+ML  &  5D2+ML  &  5DC+ML  &  70D+ML(AliveAgain)

OlRivrRat

       Also just noticed that the M'L' Menu no longer does the "Off/On" routine while in LiveView on Movie Modes. When did that get resolved. Guess I haven't been paying attention as well as I thought. Must be getting old > Oh Wait > I am Old .
ORR~DeanB  ~~  80D-ML  &  SL1+ML  &  5D2+ML  &  5DC+ML  &  70D+ML(AliveAgain)

Danne

If you use any of the provided builds on my downloads page the script is already included.
Activate lua.mo, mlv_lite, sd_uhs.mo etc, restart camera and go find the lua script called enable SD overclocking and run it and set it to Autorun ON.

If you create the script yourself paste the info to a file and give it the extension .lua Put the script in scripts. The folder exists in magic lantern build folder ML -> scripts -> SD_overclock.lua.

Alex fixed the flicker(on/off screen) issue but did not include it(I think) so I put it in this build as well. Good catch.
Commit:
https://bitbucket.org/Dannephoto/magic-lantern/commits/5ee19676453e3f12dbd6cfa6399db4219f1d6463?at=crop_rec_4k_mlv_lite_snd_sd_uhs_HDR_extended

I´m working this branch:
https://bitbucket.org/Dannephoto/magic-lantern/branch/crop_rec_4k_mlv_lite_snd_sd_uhs_HDR_extended

OlRivrRat

       Using "magiclantern-Nightly.2018May23.100D101_sd_uhs" Mod's loaded as You describe

& can't find "lua script called SD_overclock.lua" .
ORR~DeanB  ~~  80D-ML  &  SL1+ML  &  5D2+ML  &  5DC+ML  &  70D+ML(AliveAgain)

OlRivrRat

       The "SD_overclock.lua" Script is in the "ML" Folder but does not appear in the "Scripts" Menu

on Cam. Only script showing is "Show console"

       Just clicked "Show console" & dialog @ bot' of screen says >

"skipping SD_overclock.lua (file name to long)"
ORR~DeanB  ~~  80D-ML  &  SL1+ML  &  5D2+ML  &  5DC+ML  &  70D+ML(AliveAgain)

Danne

Sorry, it will say "enable SD overclocking" under Scripts menu.
It's the title coming from inside the lua script. Just enable that and set it to Autorun ON...

OlRivrRat

Changed name to SDOclock.lua & now it shows up ~
ORR~DeanB  ~~  80D-ML  &  SL1+ML  &  5D2+ML  &  5DC+ML  &  70D+ML(AliveAgain)

Danne

Strange. What cam are you using? Eosm or 100D?

wyrlyn

@Danne Could you make me a build for 700D? I want to test it. Thank you.

OlRivrRat

ORR~DeanB  ~~  80D-ML  &  SL1+ML  &  5D2+ML  &  5DC+ML  &  70D+ML(AliveAgain)

Danne

Quote from: wyrlyn on May 23, 2018, 07:45:25 PM
@Danne Could you make me a build for 700D? I want to test it. Thank you.

Out at the moment but grab the sd_uhs.mo from the 100D and replace existing one. Also grab the script from the scripts folder and put in your recent 700D build. Should work...

Edit: actually, you only need the lua script, no need to replace sd_uhs.mo.

alpicat

Quote from: OlRivrRat on May 23, 2018, 07:41:13 PM
Changed name to SDOclock.lua & now it shows up ~

@Danne  I've just tried your new build on my eos m (with Sandisk extreme pro) and it works. Thanks so much for this! I initially had the same issue as @OlRivRat where I had to change the name of the lua file to get it to appear in the scripts menu, but that was easy to fix.

I'm wondering if we still need to run the benchmark test every time the camera is turned on or is this not necessary?

a1ex

Quote from: alpicat on May 23, 2018, 11:36:28 PM
I'm wondering if we still need to run the benchmark test every time the camera is turned on or is this not necessary?

This was never necessary, but the quick tests performed during patching are not sufficient to make sure the preset is reliable.

Besides this, you have to make sure there will be absolutely no other card access during the initial tests. The code is not thread safe and any kind of card access during the inital tests, from either Canon firmware or ML, will lock up the camera and may result in a corrupted filesystem. Should this happen (camera locking up), you must format the card (even if it appears to work fine at first sight, it's almost certainly not OK and some of your files are probably already lost at that point).

I'm not saying this just for kicks; I've actually experienced corrupted filesystems many times while testing this module. If in doubt, please review the code before running it, and make sure you are not using it for anything important. Not joking. There is a reason why this is not available as a regular download.

P.S. more stuff coming soon (in particular, better compatibility with certain Sandisk cards). Still experimenting. No success with thread safety yet.

P.P.S. Not all 95MB/s cards are compatible with the hardcoded 160MHz preset. I've just got two of these.

OlRivrRat

   Not sure if this is a SD SpeedUp issue or an SL1 Issue but today I got some time to do some full testing,

ie, Rec & Process & the resulting images have a Problem >

   Using "magiclantern-Nightly.2018May23.100D101_sd_uhs" on My SL1 I shot several Min's of 2520x1080

& the Resulting DNGs & Vid only have 2352 Useable Width. The Right Hand 168Pxls are Garbled (Horizontal

Streaks & Bands)



ORR~DeanB  ~~  80D-ML  &  SL1+ML  &  5D2+ML  &  5DC+ML  &  70D+ML(AliveAgain)