Copying files slower the more files are in a directory

112 views
Skip to first unread message

slarti76

unread,
Jun 22, 2021, 3:58:11 PMJun 22
to Tasker
Weird behaviour of the Copy File action:
The more files are in the source directory and the further down alphabetically the file comes, the slower copying is (and also other functions like "Test File"). At least on Android 11 I can reproduce it on several devices.

Easy to reproduce:
Take a directory with 1000 files - nothing unusual when copying pictures from a camera SD card: They always have up to 1000 files in one directory.
Let's say they're P100001.JPG to P100999.JPG. Now measure copy times: The first file will be copied with normal speed, the last one takes 10x longer or more.
For me, in a directory with 800 files, the first file of ca. 10MB was copied in 200-300ms, the last file needed up to 10s!

I'm think it wasn't like this with Android 10, but I updated a while ago and last time I copied pictures with 10, the directory might have not been that full.

I can rule out the SD card itself: I tried several, all with the same effect, and also copying the files with a filemanager (Total Commander, internal) always had the same speed, no matter which file...

Matevz Leskovsek

unread,
Jun 22, 2021, 4:21:07 PMJun 22
to tas...@googlegroups.com
offtopic but I use foldersync app (also free version is ok) and it
integrates with tasker great
> --
> You received this message because you are subscribed to the Google Groups "Tasker" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to tasker+un...@googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/tasker/f2cc14fa-2d60-4b6d-9872-6ce42a7cc17cn%40googlegroups.com.

Ingo Rau

unread,
Jun 22, 2021, 4:32:35 PMJun 22
to tas...@googlegroups.com
@matevz Me too, but in this case I'm doing much more sophisticated stuff with the file copy than FolderSync can do... 

----------
You received this message because you are subscribed to a topic in the Google Groups "Tasker" group.
To unsubscribe from this group and all its topics, send an email to tasker+un...@googlegroups.com.

jmjc...@gmail.com

unread,
Jun 22, 2021, 11:31:55 PMJun 22
to Tasker
I don't have A11 yet. But when tested on my Samsung A10 (a folder with 750 files 20GB), it worked fine with both native Copy Files action and shell commands. So, probably a A11 thing.

jmjc...@gmail.com

unread,
Jun 22, 2021, 11:38:32 PMJun 22
to Tasker
BTW, can you use shell commands, e.g. cp, to copy files to external SD card on A11?

Ingo Rau

unread,
Jun 23, 2021, 12:25:40 AMJun 23
to tas...@googlegroups.com
Actually, I was using Shell commands before, but since A11 they don't work anymore from it to extremal storage. I mean physically extremal, intSd and extSd work. Got that discussion before, seems like she'll commands can't be executed with the same storage permissions as the main app or so... 


jmjc...@gmail.com

unread,
Jun 23, 2021, 3:35:31 AMJun 23
to Tasker
What a bummer. I have tons of sync files tasks using shell commands because they work much better and faster. I guess I am stuck on A10 for a long while.....

Ingo Rau

unread,
Jun 23, 2021, 5:32:10 AMJun 23
to tas...@googlegroups.com
Yeah, I was afraid of that, too, but I've been lobbying Joao to include copyFile() etc. as JS commands in the hope them using the app permissions. But even if they do, it"s no solution of they're also that slow... 


João Dias

unread,
Jun 25, 2021, 8:36:34 AMJun 25
to tas...@googlegroups.com
Can you please let me know how to test that behaviour with Test File? I'm guessing it's handier to test it with that instead of copying files 😅 Thanks in advance!

Thank you for your contact.

   Join: connect multiple devices (send pushes, remote SMS, notifications) on Android, Windows, Mac, Linux
   Tasker: customize/automate anything on your phone!
   AutoApps: add advanced functionality to Tasker via plugins

     

João Dias


Ingo Rau

unread,
Jun 25, 2021, 10:12:48 AMJun 25
to tas...@googlegroups.com
Well, you need to copy something initially, the whole point is a about directories with lots of files. But don't worry, i made a task to create 1000 files on any storage: 

    Create Testfiles (161)
     A1: Tasker Function [ Function:ListStorageVolumes(false) ] 
     A2: JavaScriptlet [ Code:var entries = []
    for (i=0; i<path.length; i++)
    {
       entries[i] = '<b>' + path[i] + '</b> (' + (external[i] == 'true' ? 'ext' : 'int') + ')<br><i>Description:</i> ' + description[i] + '<br><i>Subsystem:</i> ' + ((typeof subsystem !== 'undefined') ? subsystem[i] : 'n/a')
       if (uuid[i] != 'undefined')
          entries[i] += '<br><i>UUID:</i> ' + uuid[i]
       if (can_access[i] != 'true')
          entries[i] += '<br><b><i>Not accessible!</i></b>'
    } Libraries: Auto Exit:On Timeout (Seconds):45 ] 
     A3: List Dialog [ Mode:Select Single Item Title:Where to create test files? Items:%entries Selected Items: Long Click Task: Button 1:Cancel Button 2: Button 3: Close After (Seconds):120 Use HTML:On First Visible Index:0 Hide Filter:On Continue Task After Error:On ] 
     A4: Stop [ With Error:Off Task: ] If [ %ld_selected !Set ]
     A5: Variable Set [ Name:%targetdir To:%path(%ld_selected_index)/TestFiles Recurse Variables:Off Do Maths:Off Append:Off Max Rounding Digits:3 Structure Output (JSON, etc):On ] 
     A6: Pick Input Dialog [ Type:File Title:Select file Text:Choose file to copy on next screen. Should be at least 1MB. Default Input: ] 
     A7: Create Directory [ Directory:%targetdir Create All:Off Use Root:Off ] 
     A8: Flash [ Text:Copying %input to %targetdir/Txxxx... Long:On ] 
     A9: For [ Variable:%counter Items:1000:1999 Structure Output (JSON, etc):Off ] 
     A10: Copy File [ From:%input To:%targetdir/T%counter Use Root:Off ] 
     A11: End For 
    

And with this task you can test the action duration: 

    Test Copy (122)
     A1: Tasker Function [ Function:ListStorageVolumes(false) ] 
     A2: JavaScriptlet [ Code:var entries = []
    for (i=0; i<path.length; i++)
    {
       entries[i] = '<b>' + path[i] + '</b> (' + (external[i] == 'true' ? 'ext' : 'int') + ')<br><i>Description:</i> ' + description[i] + '<br><i>Subsystem:</i> ' + ((typeof subsystem !== 'undefined') ? subsystem[i] : 'n/a')
       if (uuid[i] != 'undefined')
          entries[i] += '<br><i>UUID:</i> ' + uuid[i]
       if (can_access[i] != 'true')
          entries[i] += '<br><b><i>Not accessible!</i></b>'
    } Libraries: Auto Exit:On Timeout (Seconds):45 ] 
     A3: List Dialog [ Mode:Select Single Item Title:Select Storage with test files Items:%entries Selected Items: Long Click Task: Button 1:Cancel Button 2: Button 3: Close After (Seconds):120 Use HTML:On First Visible Index:0 Hide Filter:On Continue Task After Error:On ] 
     A4: Stop [ With Error:Off Task: ] If [ %ld_selected !Set ]
     A5: Variable Set [ Name:%sourcedir To:%path(%ld_selected_index)/TestFiles Recurse Variables:Off Do Maths:Off Append:Off Max Rounding Digits:3 Structure Output (JSON, etc):On ] 
     A6: Test File [ Type:Exists Data:%sourcedir Store Result In:%exists Use Root:Off ] 
     A7: If [ %exists neq true ]
     A8: Flash [ Text:Path %sourcedir not found! Long:Off ] 
     A9: Stop [ With Error:Off Task: ] 
     A10: End If 
     A11: Variable Set [ Name:%file1 To:%sourcedir/T1000 Recurse Variables:Off Do Maths:Off Append:Off Max Rounding Digits:3 Structure Output (JSON, etc):On ] 
     A12: Variable Set [ Name:%file2 To:%sourcedir/T1999 Recurse Variables:Off Do Maths:Off Append:Off Max Rounding Digits:3 Structure Output (JSON, etc):On ] 
     A13: Variable Set [ Name:%target To:TestFiles/Target Recurse Variables:Off Do Maths:Off Append:Off Max Rounding Digits:3 Structure Output (JSON, etc):On ] 
     A14: Variable Set [ Name:%tsstart To:%TIMEMS Recurse Variables:Off Do Maths:Off Append:Off Max Rounding Digits:3 Structure Output (JSON, etc):On ] 
     A15: Copy File [ From:%file1 To:%target Use Root:Off ] 
     A16: Variable Set [ Name:%duration_copy1 To:%TIMEMS - %tsstart Recurse Variables:Off Do Maths:On Append:Off Max Rounding Digits:3 Structure Output (JSON, etc):On ] 
     A17: Variable Set [ Name:%tsstart To:%TIMEMS Recurse Variables:Off Do Maths:Off Append:Off Max Rounding Digits:3 Structure Output (JSON, etc):On ] 
     A18: Copy File [ From:%file2 To:%target Use Root:Off ] 
     A19: Variable Set [ Name:%duration_copy2 To:%TIMEMS - %tsstart Recurse Variables:Off Do Maths:On Append:Off Max Rounding Digits:3 Structure Output (JSON, etc):On ] 
     A20: Variable Set [ Name:%tsstart To:%TIMEMS Recurse Variables:Off Do Maths:Off Append:Off Max Rounding Digits:3 Structure Output (JSON, etc):On ] 
     A21: Test File [ Type:Modified Data:%file1 Store Result In:%mtime Use Root:Off ] 
     A22: Variable Set [ Name:%duration_test1 To:%TIMEMS - %tsstart Recurse Variables:Off Do Maths:On Append:Off Max Rounding Digits:3 Structure Output (JSON, etc):On ] 
     A23: Variable Set [ Name:%tsstart To:%TIMEMS Recurse Variables:Off Do Maths:Off Append:Off Max Rounding Digits:3 Structure Output (JSON, etc):On ] 
     A24: Test File [ Type:Modified Data:%file2 Store Result In:%mtime Use Root:Off ] 
     A25: Variable Set [ Name:%duration_test2 To:%TIMEMS - %tsstart Recurse Variables:Off Do Maths:On Append:Off Max Rounding Digits:3 Structure Output (JSON, etc):On ] 
     A26: Flash [ Text:Copy: %duration_copy1 / %duration_copy2 ms
    Get MTime: %duration_test1 / %duration_test2 ms Long:Off ] 
     

On my phone, neither internal nor external SD show s significant difference. But for a microsd attached as OTG with adapter, copying the last file is factor 20 slower, getting the mtime even 200x!

I can also say that a file manager shows no difference, all files copy fast as they should.
And Tasker's internal openn file dialog also takes >1min to show the contents of that created directory on the OTG storage, but no problem for the others. Android even asks whether it should kill Tasker...

Hope that helps! 


--
You received this message because you are subscribed to a topic in the Google Groups "Tasker" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/tasker/zUvG_aTJ5fA/unsubscribe.
To unsubscribe from this group and all its topics, send an email to tasker+un...@googlegroups.com.

João Dias

unread,
Jun 25, 2021, 10:14:33 AMJun 25
to tas...@googlegroups.com
Thank you! Would it be possible for you to export that to URIs (not links, simply URIs) and paste them here so I can import them directly? Thanks again!

Ingo Rau

unread,
Jun 25, 2021, 10:18:38 AMJun 25
to tas...@googlegroups.com
Always forget about that option...

taskertask://H4sIAAAAAAAAAOVZbU/bSBD+XP+KaSSaRPT8ksQJAceIt0pItDo1wH2oKrTYm2Svxo7sTSg63X+/mV07MWASaJB6VfkQr2d2Z5+dnX1m1njnLPvG02MmGWTpoFaDcC4GNacGcj6ouabTMlutmm+88aij6iKx4XQdEr7xgpBJ7jvdVqfbct1Op9ezPUsLSc2X6rbddt1+e8ez+EItQtQ5noVPeo1vuH+UctTCOc/kSEQ88yySknaaCt+x0Tw1SHAQSJHEChMLpF2DOR/UegoXAktC7re7LqKhlpIdzuIw4npAOrZ1zzfeJYsyJZyzKJchFi7NUMTjSGTBxGRxmCYiNKXylvn55Ozk8uDT+dXlwefTg8Ozk6H/LpJ7Q5niiIM0ZXfame/Gco8UV4xkVy+0adPwrYDFVywIeJY1msYRi+FAvRgynXEQI9AbCNgN0HUhoFm4TQX6cJQmN+pVJiAnuG6ZpGzMYZ5Esxv+Hka4bg4JqtJbkXECam2A9McX6qiFhjwLUjGlPcWVHi/fjA2QOZshaylk/LvkacwihHWSN2GonWlcZDMWRXdwMTx8D8NjSFL4cDE8MeEjBsGEzTmEYjTiKY8lYHzNeKZVcSKBRbfsLoNrDmzORMSuI25usNbWZmttq7XOZiLEdZ4eb+L19mZIOgoJ+oOTy8/ouQmazmZoXIVmyuQEwfyJj02wuJth6Sos2ew6u8skv0FAw6L9f4rEbrFKq0SJJEM2fyGv/hgd/yHvptz/cvY3LseMWDw2NZCXA9CWdKKwKFPoVGLpXKJf0HaRVBydhdo1/0xkMieJS0W4WUMRbtMjp6gEZukMVpHMnIpk5rT65WRWmtReTDpnKeD+poJnMIAvX40RRkFDDOw9ELQfFMVmxOOxnKBke7tp/GMAFEO+iK84qk4dr2m36rANNILk21puKQU0SNUoeFGNw4GUkuqwD3VU1GEX6iKW9SYNbSqbaREWgholht9VppUUyHIpFZTmfjB+EfkPRzcatGfJCBbnBN4SPNwxPhIxDxHT/lJJMyDW2GL1JjkDc2qDWJDkb+8PI/V9d20PKrFdXJweP4SV2yymWOb1YiLlvmfNcX1vsk90gJUlgef27XLa5YbVjX8XYVcdr5ZWnSI55KpWjWiCasHHunau67hauSqUqwqzjr0M5RVjW1U1XW+nfAwy7qtj5VnZr1zlReHV9UxKLHYO9eMcCzaVAQEDmao3rcYmk3DLMggiEXzj4c+u2hB4lMRj44x+ippU0JkjkKQqkL5mwfkqZR1Cz3jEA8lDY1g0fnb9VQJ1JZB5vi+gwal6fY2y7PdIyyW+cnK+siu4TBHUU0TnrBz5iCJLzNpaJOW/MN45XcICfbeVeLcFdbndrybl9mLoVp4Gqvt1HpB3SeU+reourONtMuBRte3e0wZ2ns4Z/cIhLXttYmhX1TjtXpncS5bth/uwIokdJXEoaCqqwVQnMSrSwEKn5MGydMojOppkfvkQehZJcmUyRYSehY9ckKLOs9Kih2ctzOfxeA/KGod0Khzidnpri74tia9chiJdk+N9fYt5zDFNi763fNDfWxYmKmqBqlPQXqHrrNC5ua4qjrr3D9YKp7lVJULf/uU/+4h4OpPGqfqlWkBiTb1M/iknWphjUlAfeag+CAWLkvFrlAO/R3aoPCB0BKoP0ZLOdT5WBL6Ovo8mSYIVD3VV/J9M7wBDN6a9xBsO57EJw0kyi0J19ZYQcYaM5Xw8NJ/D+CuORbey6F5/gazkkmcm0gcksQJdr5LpdtaiO0IHYhSAPh3k0iVe6/w7/pmmuRr4ekbZqWSU9Z4LklmM9+F1HOzYtr3r9Pv9ZzHtCpz9yi3urAeqnLc2VZQcW7G0ZyH2LPo47Rv6qf/L4Bv/AfsKC2VzGAAA

taskertask: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


--
You received this message because you are subscribed to a topic in the Google Groups "Tasker" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/tasker/zUvG_aTJ5fA/unsubscribe.
To unsubscribe from this group and all its topics, send an email to tasker+un...@googlegroups.com.

jmjc...@gmail.com

unread,
Jun 26, 2021, 3:47:39 AMJun 26
to Tasker
Is it because Tasker is copying one file at a time and file manager is somehow copying "a batch" similar to a shell command?

Ingo Rau

unread,
Jun 26, 2021, 3:58:17 AMJun 26
to tas...@googlegroups.com
No, the effect is independent of how many files are copied! It only depends on how many files are in the source directory. 


jmjc...@gmail.com

unread,
Jun 26, 2021, 5:31:30 AMJun 26
to Tasker
I see. If you only copy one file, it still takes that long?

Ingo Rau

unread,
Jun 26, 2021, 5:45:13 AMJun 26
to tas...@googlegroups.com
Yes. Only from OTG devices. I posted two tasks above to reproduce. For me it happens on at least two devices with A11 and all cards I tried. Don't have A10 anymore, there I used shell commands, which unfortunately also doesn't work anymore for OTG... 


jmjc...@gmail.com

unread,
Jun 26, 2021, 6:10:07 AMJun 26
to Tasker
On A10, I use ADB Wifi instead of Run Shell, and shell commands work.

On A11, if I have a folder with 800 files and two identical files, named 111.mp4 and zzz.mp4. if I copy them to an OTG drive using the Copy Files action, zzz.mp4 will take 10x more time to copy than 111.mp4, correct? Let me test it. I just borrowed a phone that has A11.

jmjc...@gmail.com

unread,
Jun 26, 2021, 8:37:45 AMJun 26
to Tasker
Just did a test. Created 1000 files like you suggested. All files are the same except for the filename. Copied 0001, 0500, 0980 to my USB drive. All copy durations are similar for the 3 files. 

Ingo Rau

unread,
Jun 26, 2021, 1:51:47 PMJun 26
to tas...@googlegroups.com
And you did copy from an OTG device?
I mean, I wouldn't be surprised if it depends on some other condition. What device do you have? I only have Samsung, so if you don't, perhaps its something on their system. 
Really curious what results Joao gets... 


jmjc...@gmail.com

unread,
Jun 26, 2021, 9:34:31 PMJun 26
to Tasker
Thought it was from internal to OTG. Did it again:

Test #1:
Source: OTG folder with 1000 files
Target: Internal folder
Result: 0980 took significantly more time (8x+) than 0001

Test #2:
Source: Internal folder
Target: OTG folder with 1000 files
Result: same as above

It does seem like if an OTG folder with a lot of files is used in a Tasker copy files action, whether it is the source or target, this behaviour happens.

Tested on a Samsung S6, A11, One UI3.1

Ingo Rau

unread,
Jun 27, 2021, 1:07:00 AMJun 27
to tas...@googlegroups.com
Thats exactly my experience. Thx for testing, glad to see it's really a general thing, not just a fluke for me... 



jmjc...@gmail.com

unread,
Jun 27, 2021, 1:47:18 AMJun 27
to Tasker
Found same issue on both A10 and A11. Simply copy 1000 files (each 3mb) from internal to OTG:

    OTG Copy 2 (46)
     A1: For [ Variable:%num Items:1:1000 Structure Output (JSON, etc):On ] 
     A2: Copy File [ From:%path1/sample.jpg To:%path2/test/file%num.jpg Use Root:Off ] 
     A3: End For 
 
%,path1 is internal and %path2 is OTG drive. 
  
On both A10 and A11, the above Copy File action loop took a long time to complete because once it got past 300 files, the copy speed started to get worse and when it got to 700 and beyond, the copy speed was unbearable.

Copy File action completion time: 26 min 2 seconds

On A10, since shell commands still works, if we replace the Copy File action with a ADB WIFI "cp %path1/sample.jpg %path2/test/file%num.jpg" command, the copy speed stayed pretty much the same ( a little worse but not by much) from 1 to 1000.

ADB cp completion time: 2 min 19 seconds

So, it doesn't seem like a pure A11 issue.

João Dias

unread,
Jul 2, 2021, 8:37:48 AMJul 2
to tas...@googlegroups.com
Hi again and sorry for the delay! I actually think I fixed it! :) Thank you very much for the test tasks, they were super useful.

slarti76

unread,
Jul 2, 2021, 11:20:40 AMJul 2
to Tasker
Hi Joao
No worries about the delay, especially as your fix works perfectly for me. The second copy/get mtime is now even faster than the first (probably something to do with caching). ;)
Great work, thx!

João Dias

unread,
Jul 2, 2021, 11:33:52 AMJul 2
to tas...@googlegroups.com
Awesome! :) Very glad to hear that!

jmjc...@gmail.com

unread,
Jul 5, 2021, 2:46:45 AMJul 5
to Tasker
The new version fixed the "Copy from OTG to Internal" issue. But the Copy 1000 files from Internal to OTG is still not fixed. On both A10 and A11, the problem remains. :-(

João Dias

unread,
Jul 5, 2021, 4:29:17 AMJul 5
to tas...@googlegroups.com
Does the delay also happen if you simply have many files in the destination directory? Or do you really need to copy hundreds of files to see the issue?

jmjc...@gmail.com

unread,
Jul 5, 2021, 11:22:58 PMJul 5
to Tasker
Yes, as long as target is OTG and target folder has a lot of files, delay happens.

Tests done on a Samsung S20 A10 and Samsung S6 Tablet A11. Both using Copy Files action.

Test #1:
Copy 20 files, 3MB each, from Internal to OTG
Source folder: one file only
Target folder: 1000 existing files
Time it took: 42 seconds

Test #2:
Copy 20 files, 3MB each, from Internal to OTG
Source folder: one file only
Target folder:  1 existing file
Time it took: 2 seconds

jmjc...@gmail.com

unread,
Jul 6, 2021, 3:56:28 AMJul 6
to Tasker
Same tests as above but copying just ONE file:

Test #1:
2.041 seconds

Test #2:
0.235 seconds

Reply all
Reply to author
Forward
0 new messages