Raspberry Pi 3 out, what’s the difference? A simple comparison chart and some references.

Raspberry Pi 3 is out today (RASPBERRY PI 3 ON SALE NOW AT $35, 29 February 2016), it’s been almost 4 years since I have my first Raspberry Pi, the Raspberry Pi Model B, with has only 256MB ram, now the Raspberry Pi 3 comes with the same price – $35, but much more powerful, including Quad-core 64-bit ARM Cortex A53 clocked at 1.2 GHz, built in 802.11n WiFi and Bluetooth 4.1 LE, and fully compatible with the previous version(s)! No more usb WiFi / Bluetooth dongle from now on also means we don’t need to be worried about the compatible of the WiFi/BT chip and Pi, also save us 2 USB ports, that’s very nice! Let’s take a look at it now:

Here is a photo of Raspberry Pi 3, almost the same look as Pi 2:

Raspberry-Pi-3-Model-B-pic-from-RS

(Raspberry Pi 3 picture original from RS online: http://uk.rs-online.com/web/p/processor-microcontroller-development-kits/8968660/)

Another pic with some notes:

Raspberry-Pi-3-Model-B-Diagram-from-RS

(From the link of Raspberry Pi 3 diagram on RS online Raspberry Pi 3 page)

To make it easier to be compared, I made a simple comparison chart by myself, to compare the difference between Raspberry Pi 3 and all the Raspberry Pi models I have:

Raspberry Pi 3 Model BRaspberry Pi 2 Model BRaspberry Pi Model B+Raspberry Pi Model B
ReleaseFeb 2016Feb 2015July 2014April 2012
Processor ChipsetBCM2837BCM2836BCM2835
Processor CoreARM Cortex-A53ARM Cortex-A7ARM11
Processor ArchARMv8 quad core 64BitARMv7 quad core 32BitARMv6 single core 32Bit
Processor Speed1.2 GHz0.9 GHz0.7 GHz
RAM1 GB0.5 GB0.5 GB (rev 2) / 0.25 GB (rev 1)
StorageMicroSDSD card
USB 2.04x USB Ports2x USB Ports
Max Power Draw (@5V)2.5 A1.8 A1.2 A
GPIO40 pin26 Pin
Ethernet Port10/100 Mbit Ethernet
WiFiBuilt inNo
Bluetooth LEBuilt inNo
CommentsThe latest version~6x faster, Free Win10 IoT!More USBs and GPIOThe original RPi

(If there are mistakes, feel free to tell me)

閱讀全文

Roseapple Pi 蓮霧派 效能簡測 (benchmark)

有關之前玩的蓮霧派(Roseapple Pi):

https://www.peterdavehello.org/2016/02/roseapple-pi-rapi-a-clone-of-raspberry-pi/

原先是想做一些仔細的效能測試,無奈最近實在太忙,身不由己,懶得詳測了 … 直接上圖吧,分別是在 Debian 底下用 Hardinfo 、sysbench、PHP benchmark Script 以及在 Android 底下用 QuadrantAntutu (安兔兔) 的效能”簡”測結果,比較詳細的測試,以後有緣再說囉。

系統環境的部份都和上一篇的開箱環境基本上都相同,也就是 Debian 8.1 和 Android 5.1.1,相關的映像檔資訊有需要請直接參考上面的連結。

先看在 Debian 8.1 Jessie 底下的測試結果:

Debian, Hardinfo, 直接看圖:

Debian, PHP benchmark Script using php 5.6.17:

--------------------------------------
| PHP BENCHMARK SCRIPT |
--------------------------------------
Start : 2016-02-22 13:51:08
Server : @
PHP version : 5.6.17-0+deb8u1
Platform : Linux
--------------------------------------
test_math : 8.409 sec.
test_stringmanipulation : 8.321 sec.
test_loops : 6.907 sec.
test_ifelse : 4.479 sec.
--------------------------------------
Total time: : 28.116 sec.

Debian, PHP benchmark Script using php 7.0.3 (Using Debian testing repository):

--------------------------------------
| PHP BENCHMARK SCRIPT |
--------------------------------------
Start : 2016-02-22 14:15:05
Server : @
PHP version : 7.0.3-3
Platform : Linux
--------------------------------------
test_math : 2.422 sec.
test_stringmanipulation : 3.245 sec.
test_loops : 3.002 sec.
test_ifelse : 1.955 sec.
--------------------------------------
Total time: : 10.624 sec.

上面兩個結果可以看出 PHP 7.0 的效能進步真的很大!有在寫 PHP 或 Web 相關應用的人可以當作參考。

Debian, sysbench --test=cpu --cpu-max-prime=20000 run (single-thread, 單核心):

閱讀全文

Step by step, install Ubuntu 14.04 Server on VirtualBox 虛擬機安裝紀錄

先前分享過 FreeBSD 在虛擬機上的安裝:

https://www.peterdavehello.org/2016/01/freebsd-10-2-on-virtualbox-vm-notes/

這次換寫 Ubuntu Server 的安裝,Ubuntu Server (伺服器版) 和 Ubuntu Desktop (桌面版) 的主要差異其實只有兩點:

  1. 預設安裝的套件不同
  2. 操作介面不同

就像 Ubuntu 、 Kubuntu、Lubuntu、Xubuntu 、 Ubuntu Gnome 都是 Ubuntu GNU/Linux ,使用相同的 Ubuntu apt repository,但預設使用不同的設訂、安裝了不同的桌面環境,但骨子裡都是一樣的系統,Ubuntu Server / Desktop 的關係也是這樣,少了圖形化介面以後 Server 可以省下更多的資源來提供服務,在大多數情況下也可以省下不少的硬碟空間來儲存更多的資料,身邊有些朋友因為害怕純文字介面的操作而使用桌面版的系統來架設伺服器,讓不必要的圖行化介面佔用系統資源,是有點可惜了,這篇以 VirtualBox 虛擬機環境紀錄 Ubuntu Server 14.04 的安裝,給新手做為安裝時的參考

如果想要把已經安裝好的 Ubuntu Desktop 轉換為 Ubuntu Server、在不同桌面環境間的版本轉換,可以參考這篇:

https://www.peterdavehello.org/2015/09/convert-your-ubuntudebian-between-different-versions-like-desktop-to-server/

先說 Ubuntu 安裝程式的下載, 關方有提供一個 mirror 鏡像站列表,直接從台灣的伺服器下載速度會比較快:
https://launchpad.net/ubuntu/+cdmirrors

往下拉到 “Taiwan” 的地方,可以看到台灣目前有九個已向官方登記的站台,任意挑選其中一個站台的 http 連結進入即可。ubuntu taiwan cd mirrors

這邊以元智大學的FTP站台為例 (http://ftp.yzu.edu.tw/Linux/ubuntu-releases/),點進去後會看到這樣的畫面(每個站台應該是大同小異):ubuntu download homepage

在剛剛的畫面點選 “Ubuntu 14.04.3 LTS (Trusty Tahr)” 或 “14.04” 或 “14.04.3” 以下載我們要的版本 14.04 ,14.04 後面的 .3 是在 14.04 正式發布後的後續更新版本,基本上屬於同一個版本,而不像 14.04 和 15.10 就是截然不同的兩個版本

Ubuntu 的版本號前面兩個數字代表西元年、後面代表月份,Ubuntu 每半年會發行一個新版本,也就是每年的4月及10月,所以我們才會看到 14.04, 14.10 這種版本號ubuntu download 14.04.3
閱讀全文

在 Linux 上快速建立 空白檔案 / 大檔案 的方法

建立 swap 置換空間的或是跑一些測試時候有時會需要建立一個超大檔案(這邊指的是空白檔案),最常用的方法應該是 dd,例如從 /dev/zero 讀空白資料出來寫到我們的目的地檔案 ./dd_1G,一次寫入 1MB 的資料,總共寫入 1024 塊,就可以產生一個 1GB 的檔案:

$ time dd if=/dev/zero of=./dd_1G bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 5.92408 s, 181 MB/s

real 0m6.052s
user 0m0.000s
sys 0m0.660s

在我的電腦上大概花了6秒鐘左右,檔案大的話花的時間會更多,例如 10G 或 100G 之類的,以空檔案來說,其實 dd 有更快的做法,直接用 seek 跳到指定的位置:

$ time dd of=./dd_1G_fast bs=1 count=0 seek=1G
0+0 records in
0+0 records out
0 bytes (0 B) copied, 3.4469e-05 s, 0.0 kB/s

real 0m0.001s
user 0m0.000s
sys 0m0.001s

0.001 秒 … 可以想像成把檔案頭尾的起點終點設定完就結束了,中間的內容跳過不管他,所以會很快,不過這樣產生的檔案不見得什麼工具都接受,要拿來當 swap 的話就沒辦法了,會出現:

$ sudo swapon /swap
swapon: /swap: skipping - it appears to have holes.

這邊可以參考 swapon 的 manpage:

NOTES
You should not use swapon on a file with holes. Swap over NFS may not work.

除了 dd,我們可以考慮使用 – fallocate / truncate

$ time fallocate -l 1G fallocate_1G
real 0m0.002s
user 0m0.000s
sys 0m0.002s

$ time truncate -s 1G truncate_1G
real 0m0.001s
user 0m0.000s
sys 0m0.001s

truncate 產生出來的檔案拿來給 swap 使用也會遇到上述 swap 不接受的問題,fallocate 就沒有這個問題,只是可能不適用於所有檔案系統,已知支援:btrfs, ext4, ocfs2 及 xfs,如果跑在 ext3 上面會出現:

fallocate: /swap: fallocate failed: Operation not supported

如果不考慮速度的還有一個工具 – xfs_mkfile,Debian / Ubuntu based GNU/Linux 可以透過 apt-get install xfsprogs 來安裝,雖然他是 xfs 的 utility 但也可以在其他檔案系統上面使用:

$ time xfs_mkfile 1024m xfs_mkfile_1G
real 0m10.810s
user 0m0.000s
sys 0m0.110s

比較一下產出的檔案有什麼差異?光看大小跟 checksum 看起來是沒差~ 只是使用起來可能會有上面提到的差異

peter ~/test $ ls -l
total 4194320
-rw------- 1 peter peter 1073741824 Jan 20 17:13 dd_1G
-rw------- 1 peter peter 1073741824 Jan 20 17:13 dd_1G_2
-rw------- 1 peter peter 1073741824 Jan 20 17:16 dd_1G_fast
-rw------- 1 peter peter 1073741824 Jan 20 17:13 fallocate_1G
-rw------- 1 peter peter 1073741824 Jan 20 17:13 truncate_1G
-rw------- 1 peter peter 1073741824 Jan 20 17:14 xfs_mkfile_1G

peter ~/test $ md5sum *
cd573cfaace07e7949bc0c46028904ff dd_1G
cd573cfaace07e7949bc0c46028904ff dd_1G_2
cd573cfaace07e7949bc0c46028904ff dd_1G_fast
cd573cfaace07e7949bc0c46028904ff fallocate_1G
cd573cfaace07e7949bc0c46028904ff truncate_1G
cd573cfaace07e7949bc0c46028904ff xfs_mkfile_1G

這時候要用 du -k --apparent-size & du -k 才會看得出來,有興趣的人可以試試看,結論是要產生 swap file 的話用 fallocate 會是比較快速又實際的方法