ホーム » スタッフ » 斉藤徹 (ページ 89)

斉藤徹」カテゴリーアーカイブ

2025年6月
1234567
891011121314
15161718192021
22232425262728
2930  

検索・リンク

システム開発のジレンマ

現在、他の先生と共同で発達障害者支援システムの開発をしているけど、3/21に利用者を交えた事例検討会があった。

参加者の意見交換の中で、いくつかのシステム作りのジレンマを感じる意見があった。簡単にまとめると…

「支援システムのおかげで、支援能力は2倍になった。でも便利だからこそ、保護者は先生から3倍のサポートを期待する。」(N倍は感覚をわかってもらうための便宜的な数字)

この両者の不足分の「1」は…

  1. 先生への過度の負担にならないか…
  2. コンピュータ屋的には、PDCAサイクルもう1周まわして4倍にすりゃいいじゃん…でも、その開発費はどこから?
  3. ICTによる支援も大事だが、親と子供の直接の関わりを疎遠にさせてはいけない。

卒業おめでとうございます

第80回情報処理学会全国大会で卒研内容を発表

教育の情報化フォーラム

3月8日に、総務省主管による「教育の情報化フォーラム」が開催されました。

この中で、福井高専・電子情報工学科が協力している2件の報告がありました。

  • 発達障害者プログラマーの育成と就労に繋げる支援とメンターの育成(福井大学)
  • IchigoJamでものづくり
    地域人材を生かして行う、ものづくりを通した科学技術体感型授業(ナチュラルスタイル)

pow(2,i)の速度

例年、2進数演算の課題を出すと、2i の処理を、pow(2,i) で書く学生さんがいる。

しかしながら、pow() は、double 型なので遅い。これは、2進数の特徴を踏まえれば、1 << i で書けば良い。
試しに、実際の処理速度を測ってみた。

#include <stdio.h>
#include <math.h>

long long int mask( ) {
  long long int m ;
  for( int j = 0 ; j < 10000000 ; j++ ) {
    m = 0 ;
    for( int i = 0 ; i < 60 ; i++ ) {
      m += pow( 2 , i ) ;
      // m |= (1 << i) ;
    }
  }
  return m ;
}

int main() {
  long long int x = mask() ;
  return 0 ;
}
m |= (1 << i) ; ---------  1.296 [sec]
m += pow( 2 , i ) ; ----- 44.956 [sec]
                          40倍の遅さ

型による処理速度の実験

授業のネタとするために、型によって計算時間がどう変化するか実験。レガシーなコンピュータを使ってきた人間には、float とか double とか出てきたら、「Z80な時代の頭」では数倍遅いのを期待したけど、FPU を搭載して当たり前のこの時代、そんなに差は出ない。

FPUという言葉さえ、最近は死語かな…

しかたがないので、macOS , Raspberry-Pi , Arduino 遅さの時代を逆行しながら実験。

// test.cxx
#ifndef TYPE
#define TYPE int
#endif
#include <stdio.h>

TYPE foo( TYPE i ) {
    TYPE ans = 0 ;
    for( int j = 0 ; j < 30000 ; j++ ) {
        ans += i * i ;
    }
    return ans ;
}

int main() {
    TYPE y = 0 ;
    for( TYPE i = 0 ; i < 100000 ; i++ ) {
        y = foo( i ) ;
    }
    return 0 ;
}

iMac で実験

iMac で実験。デスクトップ 64 bit マシンだし、そんなに差は出ないのは予想どおり。

bash-3.2$ uname -a
Darwin imac2 17.4.0 Darwin Kernel Version 17.4.0: ... root:xnu-4570.41.2~1/RELEASE_X86_64 x86_64

bash-3.2$ g++ -O0 -DTYPE=int test.cxx
bash-3.2$ time ./a.out
user    0m6.857s
bash-3.2$ g++ -O0 -DTYPE="long long int" test.cxx
bash-3.2$ time ./a.out
user    0m6.831s
bash-3.2$ g++ -O0 -DTYPE=float test.cxx
bash-3.2$ time ./a.out
user    0m8.528s
bash-3.2$ g++ -O0 -DTYPE=double test.cxx
bash-3.2$ time ./a.out
user    0m8.615s

Raspberry-Pi3 で実験

組み込み系の FPU などが貧弱なマシンを想定し、Raspberry-Pi 3 で同じことをやってみた。
64bit整数 long long int が想定外に遅いな。

raspberry-pi:~$ uname -a
Linux raspberry-pi 4.14.22-v7+ #1096 SMP ...2018 armv7l GNU/Linux

raspberry-pi:~$ gcc -O0 -DTYPE=int test.cxx
raspberry-pi:~$ time ./a.out
user    0m37.588s
raspberry-pi:~$ gcc -O0 -DTYPE="long long int" test.cxx
raspberry-pi:~$ time ./a.out
user    1m18.535s
raspberry-pi:~$ gcc -O0 -DTYPE=float test.cxx
raspberry-pi:~$ time ./a.out
user    0m52.206s
raspberry-pi:~$ gcc -O0 -DTYPE=double test.cxx
raspberry-pi:~$ time ./a.out
user    0m50.287s

Arduino で実験

同じことを Arduino でやってみた。main のループは 1/10000 の回数にして、10000倍の時間を掲載…
ようやく「Z80 な頭」が期待している実験結果となったかな。

int       6880[sec] 16bit int
long      6320[sec] 32bit int 
float    92080[sec] 32bit float
double   92080[sec] Arduino Uno では、double = 32bit で float と同じ

授業アンケート結果

情報ネットワーク基礎(3EI)

情報構造論(4EI)

データベース(5EI)後期

データベースの授業では、83.8ポイントで、昨年度よりも若干ではあるがポイントも増加している。
例年は、板書のポイントが低いことが多いが、今年度は評価も高かった。

オブジェクト指向プログラミング(PS2)前期

オブジェクト指向プログラミングでは、84.4ポイントであった。電子情報系の学生の受講が無く、機械系・電気電子系学生であったが、課題にもきちんと取り組んでくれたこともあり、評価も高かった。

創造工学演習(4EI)前期


学生からの意見では、「アイデアをまとめる時間を短くして、製作時間を増やして欲しい」という積極的な意見があった。
限られた時間でものづくりまでを行う内容であるため、時間配分の検討が必要と感じた。

緊急連絡システムメンテナンス

大雪の連絡が飛び交う中、緊急連絡システムを確認したら、mailqueueに over 800 件の大量メール。配送に影響でているのかと色々と確認したら、メールアドレス間違いでエラーになったメールが各学校に送られていないみたい。

エラーメールが行き渡らないのは別途確認ということで、あまりにも大量なので強制的にエラーメールの未配送を選んで、メールを削除。

2/6雪に埋もれてます

今日は雪で専攻科2年の午後からの試験を除き休校。

とはいいながら、堀井さんから送られてきた9:30頃の正門。入れそうには見えない。(^_^)

休みをとって正解だった…。m(_ _)m

2段階認証のレポートにて

情報ネットワーク基礎で、セキュリティの話の中で2段階認証の説明を行ったので、レポートにて自分のアカウントの2段階認証の設定を行い、その経過をレポートにまとめるという課題をだした。TwitterやGoogleや自分のゲームアカウントの2段階認証でレポートを出してくれている。

ただし、レポートでは個人情報の扱いには注意すること…という条件をだしたけど、wordで提出されたレポートで、画像ファイルをみると、キャプチャ画像の上に図を貼って隠している状態のレポートが多い。これじゃ、上の図をずらせば個人情報丸見え…なレポートの人が若干見受けられた。以下の図がその状態を真似たもの。

システム

最新の投稿(電子情報)

最近の投稿(斉藤 徹)

アーカイブ

カテゴリー