MySql server 4.0.18

huge number of radius data being written by perl script into mysql db.
can see the problem at the peak data generating time by radius..

top out at the time of problem
20961 mysql 17 0 47972 46M 1464 S 52.8 2.3 53:25 3 mysqld
20660 mysql 17 0 47972 46M 1464 R 46.0 2.3 66:42 3 mysqld

running 2 thread using 100% CPU ( out of 2 cpu) and more TIME, create problem writing more data into db faster.

it is going normal state when reducing the load.

hardware : 2 xeon, 2gb ram, scsi raid1

my.cnf setting

port = 3306
socket = /var/lib/mysql/mysql.sock
skip-locking
skip-innodb
skip-name-resolve
key_buffer = 384M
max_allowed_packet = 60M
table_cache = 2048
sort_buffer_size = 2M
read_buffer_size = 2M
myisam_sort_buffer_size = 64M
thread_cache = 128
max_connections=512
max_user_connections=512
wait_timeout=30
# Try number of CPU's*2 for thread_concurrency
thread_concurrency = 4

Please have me the solution to run MySQL server with less CPU use and TIME

Thank you
!Jack