With this method, my bpi_m2u was able to normally run for 10 days since last manually restart. Many thanks to @charles. He suggested me the right way to work out this method.
This method is unofficial because @sinovoip or any other stuff of bpi_m2u maker never give any solution to solve instability problem, but instability seems to be a common problem among customers. See frequent-freeze-ups-of-m2u and what-can-i-do-with-a-defect-board.
#Principle We have to tweak frequency of ram in sys_config.fex. Someone says the default frequency of ram is to high(648MHz). The max frequency shoud be 576MHz. See http://www.cnx-software.com/2017/05/29/banana-pi-bpi-m2-berry-allwinner-v40-development-board-allwinner-business-units-sdksoftware-management/#comment-542610.
Besides frequency, voltage should also be tweak a litte higher. See frequent-freeze-ups-of-m2u.
#Solution The frequency of ram and voltage can only be tweaked by changing their values in sys_config.fex of source code, compiling the source code and writing it to SD card.
##Step 1. (I have pushed my revised source code to facat/BPI-M2U-bsp, you may skip this step)
First, you have to fetch kernel source from official code repository. At the time this article is written, it’s 3.10.65 version.
sunxi-pack/allwinner/azalea-m2ultra/configs. You will see 7 folders.
I recommend you edit sys_config.fex in each of these folders.
For example, go to BPI_M2U_720P and edit sys_config.fex with any editor you like.
dcdc2_vol = 1001160 dcdc3_vol = 1001100 dcdc4_vol = 1100 dc5ldo_vol = 1100
dcdc2_vol = 1001280 dcdc3_vol = 1001150 dcdc4_vol = 1160 dc5ldo_vol = 1200
This is for tweaking voltage of ram.
dram_clk = 648
dram_clk = 576
This is for tweaking frequency of ram.
Compile the source code as described in
When choosing what to compile, choose 1.
Build all, uboot, kernel, and pack to download images.
Write new images bach to your SD card as described in
!Important: You must write back files in 100MB, BPI-BOOT-bpi-m2u.tgz and 3.10.65-BPI-M2U-Kernel.tgz. Do it as the pdf file says.
###For those who are not good at compiling kernel, I supply my kernel (my BPI-M2U kernel image).