Using `rclone` instead of `rsync`

rclone is an alternative of rsync for cloud storage. It can be applied to remote servers, OneDrive, Google Drive, Box, … (almost all existing cloud storage). The supported protocols: 1 / 1Fichier \ (fichier) 2 / Akamai NetStorage \ (netstorage) 3 / Alias for an existing remote \ (alias) 4 / Amazon S3 Compliant Storage Providers including AWS, Alibaba, ArvanCloud, Ceph, ChinaMobile, Cloudflare, DigitalOcean, Dreamhost, GCS, HuaweiOBS, IBMCOS, IDrive, IONOS, LyveCloud, Leviia, Liara, Linode, Magalu, Minio, Netease, Petabox, RackCorp, Rclone, Scaleway, SeaweedFS, StackPath, Storj, Synology, TencentCOS, Wasabi, Qiniu and others \ (s3) 5 / Backblaze B2 \ (b2) 6 / Better checksums for other remotes \ (hasher) 7 / Box \ (box) 8 / Cache a remote \ (cache) 9 / Citrix Sharefile \ (sharefile) 10 / Combine several remotes into one \ (combine) 11 / Compress a remote \ (compress) 12 / Dropbox \ (dropbox) 13 / Encrypt/Decrypt a remote \ (crypt) 14 / Enterprise File Fabric \ (filefabric) 15 / FTP \ (ftp) 16 / Google Cloud Storage (this is not Google Drive) \ (google cloud storage) 17 / Google Drive \ (drive) 18 / Google Photos \ (google photos) 19 / HTTP \ (http) 20 / Hadoop distributed file system \ (hdfs) 21 / HiDrive \ (hidrive) 22 / ImageKit.io \ (imagekit) 23 / In memory object storage system. \ (memory) 24 / Internet Archive \ (internetarchive) 25 / Jottacloud \ (jottacloud) 26 / Koofr, Digi Storage and other Koofr-compatible storage providers \ (koofr) 27 / Linkbox \ (linkbox) 28 / Local Disk \ (local) 29 / Mail.ru Cloud \ (mailru) 30 / Mega \ (mega) 31 / Microsoft Azure Blob Storage \ (azureblob) 32 / Microsoft Azure Files \ (azurefiles) 33 / Microsoft OneDrive \ (onedrive) 34 / OpenDrive \ (opendrive) 35 / OpenStack Swift (Rackspace Cloud Files, Blomp Cloud Storage, Memset Memstore, OVH) \ (swift) 36 / Oracle Cloud Infrastructure Object Storage \ (oracleobjectstorage) 37 / Pcloud \ (pcloud) 38 / PikPak \ (pikpak) 39 / Proton Drive \ (protondrive) 40 / Put.io \ (putio) 41 / QingCloud Object Storage \ (qingstor) 42 / Quatrix by Maytech \ (quatrix) 43 / SMB / CIFS \ (smb) 44 / SSH/SFTP \ (sftp) 45 / Sia Decentralized Cloud \ (sia) 46 / Storj Decentralized Cloud Storage \ (storj) 47 / Sugarsync \ (sugarsync) 48 / Transparently chunk/split large files \ (chunker) 49 / Uloz.to \ (ulozto) 50 / Union merges the contents of several upstream fs \ (union) 51 / Uptobox \ (uptobox) 52 / WebDAV \ (webdav) 53 / Yandex Disk \ (yandex) 54 / Zoho \ (zoho) 55 / premiumize.me \ (premiumizeme) 56 / seafile \ (seafile) I’ve used this to rsync data files between my Azure (in Microsoft Intranet) and my School Server (in school intranet that requires VPN) using OneDrive as the exchange. I’ll use another blog to talk about this. ...

November 25, 2024 · 4 min · 739 words · Ethan Lyu

CUDA Programming Model I

The programming model gives us a high level idea of how to write CUDA programs. Also, we need to know how to debug the program using the toolchains. There are several key points that we need to be aware of in the GPU programming: Kernel Function Memory Management Thread Management Streams A typical environment usually encompasses several CPUs and GPUs. They use PCIe to communicate with each other. The memory is strictly isolated between CPU and GPU (though they share uniform addressing). A complete CUDA program can be executed in the following way: The host code is followed by the parallel code. And it will be returned immediately to the main thread. In other word, when the first parallel code is running, the second host code is likely to run as well simultaneously. ...

November 24, 2024 · 7 min · 1402 words · Ethan Lyu

Use `aria2c` instead of `wget`

Recently, I need to download the dataset to my remote servers. Clearly, I do not want to download to my local machine. So initially I choose wget as I previous did. Soon after I find wget is too slow. Then I ask ChatGPT. It recommends aria2. Official Page: aria2 The greatest advantage is it can establish parallel connections simultaneously to speed up the download. We can use sudo apt install aria2 to install on Ubuntu. ...

November 20, 2024 · 1 min · 138 words · Ethan Lyu

CUDA Programming Intro

There are numerous tutorials online to teach how to use CUDA C++ for parallel programming. And we will adopt some of them. The best way to learn is to read the official documents. This tutorial, however, will start from how to write the code at the beginning. We will illustrate the architecture part throughout the code. We will take few days to go over the principle of CUDA programming. Afterwards, we will read over the ML code to see how the operations are implemented in CUDA core. There is no strict prerequisite (except basic programming), but it would be better to know OS and CPU (a little bit). ...

November 1, 2024 · 3 min · 454 words · Ethan Lyu

RAK11200 Config

Arduino Download Arduino To add board support for RAK11200 on Arduino, start Arduino IDE and open the Preferences window (File > Preferences). Copy https://raw.githubusercontent.com/RAKwireless/RAKwireless-Arduino-BSP-Index/main/package_rakwireless_index.json Open board manager, type RAK and choose the corresponding board. Connect Board with USB. You are required to find the port. To check if it is the right port, plug out and in to see if it disappears/appears. Remember to check if the connection of wire is good. 5. Short Boot0 and Ground 6. When uploading and showing “connecting”, press the reset for at least 2 seconds.

January 7, 2023 · 1 min · 91 words · Ethan Lyu