Это были месяцы, когда я замечал, что мой ноутбук Dell [Ubuntu 16.04] становится неожиданно медленнее, теперь я обнаружил, что это происходит, когда я отсоединяю его от собственной док-станции. Кажется, что это не связано с силовыми носками или без Интернета, поскольку у меня такая же проблема, например. когда я работаю с поезда с ноутбуком, подключенным к носу. Это просто, когда он находится вне док-станции. См. следующий сеанс консоли, где я сравниваю фиктивную функцию с помощью Джулии (проблема не в Джулии .. I имеют проблемы также при составлении большого PDF-файла из LaTeX по любой другой вычислительно-интенсивной проблеме). Кажется, что в других процессах нет процессора или памяти.
$ julia
_
_ _ _(_)_ | A fresh approach to technical computing
(_) | (_) (_) | Documentation: http://docs.julialang.org
_ _ _| |_ __ _ | Type "?help" for help.
| | | | | | |/ _` | |
| | |_| | | | (_| | | Version 0.5.1 (2017-03-05 13:25 UTC)
_/ |\__'_|_|_|\__'_| | Official http://julialang.org/ release
|__/ | x86_64-pc-linux-gnu
julia> function f(n)
s = 0
for i = 1:n
s += i/2
end
s
end
f (generic function with 1 method)
julia> @time f(100000000)
1.948031 seconds (300.00 M allocations: 4.470 GB, 14.57% gc time)
2.500000025e15
julia> @time f(100000000)
1.771005 seconds (300.00 M allocations: 4.470 GB, 7.27% gc time)
2.500000025e15
julia> @time f(100000000)
1.764294 seconds (300.00 M allocations: 4.470 GB, 7.00% gc time)
2.500000025e15
julia> @time f(100000000)
1.776455 seconds (300.00 M allocations: 4.470 GB, 7.06% gc time)
2.500000025e15
julia> @time f(100000000)
1.791494 seconds (300.00 M allocations: 4.470 GB, 7.12% gc time)
2.500000025e15
julia> @time f(100000000) # here I unplug the laptop from the docking station
11.927460 seconds (300.00 M allocations: 4.470 GB, 5.56% gc time)
2.500000025e15
julia> @time f(100000000)
12.201062 seconds (300.00 M allocations: 4.470 GB, 5.50% gc time)
2.500000025e15
julia> @time f(100000000) # here I plugged the power cord directly to the laptop
11.839180 seconds (300.00 M allocations: 4.470 GB, 5.62% gc time)
2.500000025e15
julia> @time f(100000000) # here I removed internet conection, including wifi
11.860953 seconds (300.00 M allocations: 4.470 GB, 5.65% gc time)
2.500000025e15
julia> @time f(100000000) # here I plugged back the laptop on the deck
11.789184 seconds (300.00 M allocations: 4.470 GB, 5.63% gc time)
2.500000025e15
julia> @time f(100000000) # here I switched the keyboqrd to English lqnguqge
11.857721 seconds (300.00 M allocations: 4.470 GB, 5.68% gc time)
2.500000025e15
julia> @time f(100000000) # here I closed the screen of the laptop and worked back on the main screen
12.001792 seconds (300.00 M allocations: 4.470 GB, 5.63% gc time)
2.500000025e15
julia> @time f(100000000) # here I am back to ethernet
11.865361 seconds (300.00 M allocations: 4.470 GB, 5.71% gc time)
2.500000025e15
julia> exit()
$ julia
_
_ _ _(_)_ | A fresh approach to technical computing
(_) | (_) (_) | Documentation: http://docs.julialang.org
_ _ _| |_ __ _ | Type "?help" for help.
| | | | | | |/ _` | |
| | |_| | | | (_| | | Version 0.5.1 (2017-03-05 13:25 UTC)
_/ |\__'_|_|_|\__'_| | Official http://julialang.org/ release
|__/ | x86_64-pc-linux-gnu
julia> @time f(100000000) # here I went off and on Julia
ERROR: UndefVarError: f not defined
julia> function f(n)
s = 0
for i = 1:n
s += i/2
end
s
end
f (generic function with 1 method)
julia> @time f(100000000) # here I went off and on Julia
12.809319 seconds (300.00 M allocations: 4.470 GB, 11.16% gc time)
2.500000025e15
julia> @time f(100000000) # here after lot of time (lunch break)
11.916337 seconds (300.00 M allocations: 4.470 GB, 5.49% gc time)
2.500000025e15
julia> quit()
$ julia
_
_ _ _(_)_ | A fresh approach to technical computing
(_) | (_) (_) | Documentation: http://docs.julialang.org
_ _ _| |_ __ _ | Type "?help" for help.
| | | | | | |/ _` | |
| | |_| | | | (_| | | Version 0.5.1 (2017-03-05 13:25 UTC)
_/ |\__'_|_|_|\__'_| | Official http://julialang.org/ release
|__/ | x86_64-pc-linux-gnu
julia> @time f(100000000) # here after suspended the pc and julia stop/restart
ERROR: UndefVarError: f not defined
julia> function f(n)
s = 0
for i = 1:n
s += i/2
end
s
end
f (generic function with 1 method)
julia> @time f(100000000) # here after suspended the pc and julia stop/restart
1.952593 seconds (300.00 M allocations: 4.470 GB, 14.26% gc time)
2.500000025e15
julia> @time f(100000000) # here after suspended the pc and julia stop/restart
1.824997 seconds (300.00 M allocations: 4.470 GB, 6.34% gc time)
2.500000025e15
julia>
EDITED: Следующая расшифровка показывает что-то интересное .. в предыдущем отключении от док-станции я сделал это с закрытым экраном , теперь я отсоединяю его от экрана, и таким образом он работает. Пока я не удаляю вилку питания и не приостанавливаю / возобновляю ... тогда это не сработает, тогда я подключаю питание, приостанавливаю / возобновляю и он работает хорошо снова ... Кажется, он идет в режиме с низким потреблением, и не имеет значения, если вы подключите питание, вам также нужно дать ноутбуку приостановить / возобновить, чтобы ноутбук понял, что он подключен назад ...
quit()
lobianco@lobianco-officeLinux:~/Dropbox/Documenti/Varie/lef/papers/ffsm++/versions/07_carbon_balance_with_multipliers$ julia
_
_ _ _(_)_ | A fresh approach to technical computing
(_) | (_) (_) | Documentation: http://docs.julialang.org
_ _ _| |_ __ _ | Type "?help" for help.
| | | | | | |/ _` | |
| | |_| | | | (_| | | Version 0.5.1 (2017-03-05 13:25 UTC)
_/ |\__'_|_|_|\__'_| | Official http://julialang.org/ release
|__/ | x86_64-pc-linux-gnu
julia> function f(n)
s = 0
for i = 1:n
s += i/2
end
s
end
f (generic function with 1 method)
julia> @time f(100000000) # after switched off internet and moved back to french
1.939228 seconds (300.00 M allocations: 4.470 GB, 13.96% gc time)
2.500000025e15
julia> @time f(100000000) # after switched off internet and moved back to french
1.761612 seconds (300.00 M allocations: 4.470 GB, 6.42% gc time)
2.500000025e15
julia> @time f(100000000) # after unplugged power but still laptop on his own deck
1.775432 seconds (300.00 M allocations: 4.470 GB, 6.30% gc time)
2.500000025e15
julia> @time f(100000000) # after removing laptop from the deck (still unplugged)
1.770068 seconds (300.00 M allocations: 4.470 GB, 6.28% gc time)
2.500000025e15
julia> @time f(100000000) # after removing laptop from the deck (still unplugged)
1.744716 seconds (300.00 M allocations: 4.470 GB, 6.32% gc time)
2.500000025e15
julia> @time f(100000000) # after suspend/resume
11.743261 seconds (300.00 M allocations: 4.470 GB, 5.28% gc time)
2.500000025e15
julia> @time f(100000000) # after plugging the power (still disconnected from deck)
11.722175 seconds (300.00 M allocations: 4.470 GB, 5.30% gc time)
2.500000025e15
julia> @time f(100000000) # after suspend/resume
1.770605 seconds (300.00 M allocations: 4.470 GB, 6.29% gc time)
2.500000025e15
julia>
Я могу, наконец, сказать, что это связано с тем, что он отключен от розетки. Ноутбук переключается в режим экономии энергии с низким энергопотреблением, но он реализует любые изменения только тогда, когда он приостановлен / возобновлен.
Итак, если, например, ноутбук на собственной док-станции, вилка подключена к док-станция и крышка экрана закрыты (когда я работаю с внешним экраном / клавиатурой), а затем я удаляю ноутбук, надеваю его и переключаю кабель с док-станции на ноутбук (это мое поведение по умолчанию), ноутбук будет продолжают работать в режиме с низкой энергией, так как у него не будет вилки питания. Мне нужно затем приостановить / возобновить работу ноутбука, чтобы он понял, что он подключен обратно (или, наоборот, переместите штепсель с док-станции на ноутбук, прежде чем снимать ноутбук с док-станции).
Во всех случаях я считаю, что это ошибка ubuntu, поскольку ноутбук должен реализовывать в режиме реального времени, если он подключен к сокете или нет, а не только когда он приостановлен / возобновлен ..
Я могу, наконец, сказать, что это связано с тем, что он отключен от розетки. Ноутбук переключается в режим экономии энергии с низким энергопотреблением, но он реализует любые изменения только тогда, когда он приостановлен / возобновлен.
Итак, если, например, ноутбук на собственной док-станции, вилка подключена к док-станция и крышка экрана закрыты (когда я работаю с внешним экраном / клавиатурой), а затем я удаляю ноутбук, надеваю его и переключаю кабель с док-станции на ноутбук (это мое поведение по умолчанию), ноутбук будет продолжают работать в режиме с низкой энергией, так как у него не будет вилки питания. Мне нужно затем приостановить / возобновить работу ноутбука, чтобы он понял, что он подключен обратно (или, наоборот, переместите штепсель с док-станции на ноутбук, прежде чем снимать ноутбук с док-станции).
Во всех случаях я считаю, что это ошибка ubuntu, поскольку ноутбук должен реализовывать в режиме реального времени, если он подключен к сокете или нет, а не только когда он приостановлен / возобновлен ..